问个base64解码问题
原字符串(有点长,往后拉一拉):
var key='MjhERTEwQkFBRDJBRTRERDhDM0FBNkZBMzNFQ0RFMTFCQTBCQzE3QU1UUTRPRFV6TkRjeU16UTVNRFUyTnpnek9ETXJNVE15T1RRME9EZzROVGsyTVRreU1ETXdNRE0zTnpjd01EazNNekV5T1RJek1qUXlNemN4';
这是第三方平台给过来的字符串,要求base64解码,解出来的是一个中间有个“+”号连接的字符串。
nodejs代码如下:
console.log(str) //28DE10BAAD2AE4DD8C3AA6FA33ECDE11BA0BC17AMTQ4ODUzNDcyMzQ5MDU2NzgzODMrMTMyOTQ0ODg4NTk2MTkyMDMwMDM3NzcwMDk3MzEyOTIzMjQyMzcx
console.log(new Buffer(str,'base64').toString()); //^�14885347234905678383+132944888596192030037770097312923242371
解码了2次才是最终结果,而且前面还有2个乱码(node版本 0.10.32)
c#代码:
String decodeBaseStr = Base64.DecodeBase64(key);
Console.WriteLine(decodeBaseStr");//14885347234905678383+132944888596192030037770097312923242371
一次就得到正确的结果了
网页上的解码工具: 第一次解码:
28DE10BAAD2AE4DD8C3AA6FA33ECDE11BA0BC17AMTQ4ODUzNDcyMzQ5MDU2NzgzODMrMTMyOTQ0ODg4NTk2MTkyMDMwMDM3NzcwMDk3MzEyOTIzMjQyMzcx
再解码:
ۀė@@=ð-@߱Mu
^14885347234905678383+132944888596192030037770097312923242371
这种问题nodejs该如何解码呢?