問題:
base64轉化後的字串中會含有『+』、『/』、『=』這些字元,當把該字串應用於url中時,會影響url的解析
解決:將『+』、『/』、『=』轉化為base64轉化不會生成且不影響url解析的的字元,如『*』、『_』、『-』、『.』
// base64實現
var base64 = else if (isnan(i))
t = t + this._keystr.charat(s) + this._keystr.charat(o) + this._keystr.charat(u) + this._keystr.charat(a)
} return t
}, decode: function(e)
if (a != 64)
} t = base64._utf8_decode(t);
return t
}, _utf8_encode: function(e) else if (r > 127 && r < 2048) else
} return t
}, _utf8_decode: function(e) else if (r > 191 && r < 224) else
} return t }}
let a = 'asdf123啦啦%%@#+++';
var a = base64.encode(a);
console.log(a); // yxnkzjeym+wvpuwvpiulqcmrkys=
console.log(a.replace(/=/g,'.').replace(/\+/g,'*').replace(/\//g,'-')); // yxnkzjeym*wvpuwvpiulqcmrkys.
js不支援replaceall,所以,要用replace和正則結合實現全域性替換
str.replace(/要替換的字元/g,替換成的字元);
str.replace(/=/g,'.'); // 把str中所有的=,替換為.
base64轉碼 解碼
最近有業務需要使用base64轉碼,現在整理一下 window.btoawindow.atob示例window.btoa test d zda window.atob d zda test如果字串中包含中文,直接使用btoa會報錯,可以先使用encodeuricomponent進行編碼 window...
物件base64轉碼 Base64編碼轉換
1 為什麼mime要有編碼轉換 在mime總結這篇經驗中,總結了mime相較於rfc 822的擴充套件功能,其中提到了rfc 822的缺陷 非英語字元都不能在電子郵件中使用 2 電子郵件中不能插入二進位制檔案 如 3 電子郵件不能有附件。能夠對文字進行簡單的加密 2 quoted printable...
Linux下Base64轉碼解碼
編碼 echo n ceshi1111 base64 輸出 y2vzagkxmtex 解碼 echo n y2vzagkxmtex base64 d 輸出 ceshi1111 附 base64命令說明 使用 base64 編碼 解碼檔案或標準輸入輸出。w,在指定的字元數後自動換行 預設為76 0 為...