node.js如何将base64编码的字符串解码?
发布于 11 年前 作者 zhoutaobj 56580 次浏览 最后一次编辑是 6 年前

得到的字符串经过base64(key1=value1&key2=value2……); 如何将该字符串解码成原始字符串?

8 回复

使用Buffer

> new Buffer('IUAjJA==', 'base64').toString()
'!@#$'

测试代码

> var a = new Buffer('key1=value1&key2=value2').toString('base64');
undefined
> a
'a2V5MT12YWx1ZTEma2V5Mj12YWx1ZTI='
> new Buffer(a, 'base64').toString()
'key1=value1&key2=value2'

感谢兄弟的及时回复

这个方法我来试下.

试下来没问题。

https://github.com/node-browser-compat 用这个吧,浏览器现在都自带base64解码和编码函数了,node应该很快也会有了吧

各位大神 幫忙看下 我這邊 之前node v0.10.x的時候 正常解碼base64 升級到v5.x之後發現無法解碼啦 eyJ1c2VybmFtZSI6ImR1b2R1b3poaWppYW8iLCJwYXNzd29yZCI6IjEyMzQ1NnRiIn0= 這個是base64之後的數據 但是服務端那邊居然還原回來 少了最後的=字符 導致無法解析 求大神指點 是否5.x的版本有些改動? node部分代碼

      //先将req.body对象进行字符串化,再进行base64解码
        var string = JSON.stringify(req.body);
        console.log("string is"+string);
        var decodedstr = new Buffer(string, 'base64');
        console.log("get the decodestr "+decodedstr);
        // decodedstr = decodedstr.replace('?','');
        var obj = JSON.parse(decodedstr.toString());
        var mdPassword=crypt.md5(obj['password']);
		```

@toby520 var boby =“name=chenziang&password=a123456”; var str =JSON.stringify(boby);//req.boby console.log(str); var decodedstr =new Buffer(str).toString(‘base64’); console.log("转base64 "+decodedstr); var obj =new Buffer(decodedstr,‘base64’).toString(); console.log(obj);

回到顶部