Javascript base64解码未重新调整text node.js

Javascript base64解码未重新调整text node.js,javascript,node.js,Javascript,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 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);
当我转到
http://localhost:8080/?addr=aGVsbG8gd29ybGQ=
我希望在控制台中看到“hello,world”,以及以下网页:

{"addr":"aGVsbG8gd29ybGQ=","base64": "hello world"}
但是我得到了

{“addr”:“aGVsbG8gd29ybGQ=,“base64”:{“type”:“Buffer”,“data”:[104101108111,32119111114108100]}


我知道这是ASCII码,但我如何让它显示为文本。(我希望在客户端js中的
atob()
功能中使用limaler函数)

您需要将
toString
方法添加到缓冲区:

var base64 = Buffer.from(q.addr, "base64").toString();