[英]base64 decoding not retuning text node.js
所以我有一些代碼
var http = require('http');
var url = require('url');
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/html'});
/* parse the url*/
var q = url.parse(req.url, true).query;
/*de encript it*/
var base64 = Buffer.from(q.addr, "base64")
/* JSON encoding*/
console.log(base64)
let data = {
addr: q.addr ,
base64: base64 ,
};
/*outputing*/
var txt = JSON.stringify(data);;
res.end(txt);
}).listen(8080);
當我從 go 到http://localhost:8080/?addr=aGVsbG8gd29ybGQ=
我希望在控制台中看到“你好,世界”,這個網頁:
{"addr":"aGVsbG8gd29ybGQ=","base64": "hello world"}
但我明白了
<緩沖器68 65 6c 6c 6f 20 77 6f 72 6c 64>
和
{"addr":"aGVsbG8gd29ybGQ=","base64":{"type":"Buffer","data":[104,101,108,108,111,32,119,111,114,108,100]}}
我知道這是 ASCII 但我如何讓它顯示為文本。 (我想要 limaler function 到客戶端 js 中的atob()
功能)
您需要將toString
方法添加到緩沖區:
var base64 = Buffer.from(q.addr, "base64").toString();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.