簡體   English   中英

base64 解碼不重調文本 node.js

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM