亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

js如何判斷一個字符串是否是base64字符串?

js如何判斷一個字符串是否是base64字符串?

眼眸繁星 2019-03-18 22:04:31
比方說圖片上傳,有file對象、blob對象和base64,如果是base64,怎么準確判斷這個字符串是base64呢?如果不是圖片是其他類型的呢?
查看完整描述

2 回答

?
繁華開滿天機

TA貢獻1816條經驗 獲得超4個贊

function isBase64(str) {    if (str ==='' || str.trim() ===''){ return false; }    try {        return btoa(atob(str)) == str;
    } catch (err) {        return false;
    }
}

or

const notBase64 = /[^A-Z0-9+\/=]/i;

export default function isBase64(str) {
  assertString(str); // remove this line and make sure you pass in a string
  const len = str.length;  if (!len || len % 4 !== 0 || notBase64.test(str)) {    return false;
  }
  const firstPaddingChar = str.indexOf('=');  return firstPaddingChar === -1 ||
    firstPaddingChar === len - 1 ||
    (firstPaddingChar === len - 2 && str[len - 1] === '=');
}

試試看呢


查看完整回答
反對 回復 2019-03-18
?
米脂

TA貢獻1836條經驗 獲得超3個贊

首先表示抱歉,沒有遇到過這個問題。
但如果要上傳未知類型的數據的話可以,直接設置請求頭類型為Content-Type:multipart/form-data。
數據處理為一條消息,以標簽為單元,用分隔符分開。既可以上傳鍵值對,也可以上傳文件。當上傳的字段是文件時,會有Content-Type:來表名文件類型content-disposition:用來說明字段的一些信息;

由于有boundary隔離,所以multipart/form-data既可以上傳文件,也可以上傳鍵值對,它采用了鍵值對的方式,所以可以上傳多個文件。
然后在由后臺做處理(后臺是可以拿到他的類型(字符串/其他文件))


查看完整回答
反對 回復 2019-03-18
  • 2 回答
  • 0 關注
  • 3416 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號