[英]Base64 encoding of String in Node.js
我嘗試在瀏覽器和服務器中都對字符串進行編碼,但是對於特定字符串,我有不同的base64編碼
這是我的字符串:“£a = S =³hPóc¨¸”(十六進制:00a3006100ba00a900940053003d00b30068005000f300900020006300a800b8)
客戶端:我使用btoa()對該字符串進行編碼,並且具有: o2G6qZRTPbNoUPOQIGOouA==
,這是我期望的結果。
服務器端:根據我在Node.js中的答案 ,使用Buffer對該字符串進行編碼:
var ciphertext = ... // myString
console.log(ciphertext.hexEncode()); // 00a3006100ba00a900940053003d00b30068005000f300900020006300a800b8
console.log(Buffer.from(ciphertext, 'utf8').toString('base64')) // wqNhwrrCqcKUUz3Cs2hQw7PCkCBjwqjCuA==
console.log(Buffer.from(ciphertext, 'ucs2').toString('base64')) // owBhALoAqQCUAFMAPQCzAGgAUADzAJAAIABjAKgAuAA=
我設法使用node-package base-64獲得了我期望的base64編碼
我仍然不知道為什么,所以如果有人有線索
var base64 = require('base-64');
var ciphertext = ...; //myString
var encoded = base64.encode(bytes);
console.log(encoded); // o2G6qZRTPbNoUPOQIGOouA==
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.