缓冲区base64编码变量node.js

时间:2014-09-29 09:22:22

标签: javascript node.js buffer

我正在尝试使用node.js和buffer将

我的代码:

var http = require("http");
var url = require("url");

http.createServer(function(req, res) {

  var parsedUrl = url.parse(req.url, true);
  var queryAsObject = parsedUrl.query;
  var urlEncodeString = new Buffer(queryAsObject).toString('base64');

  console.log(urlEncodeString);

  res.end(urlEncodeString);

}).listen(8020);

console.log("Server listening on port 8020");

使用的网址:http://127.0.0.1:8020/?test=testtxt

queryAsObject返回{ test: ‘testtxt’ }

有没有办法使用Buffer来读取变量queryAsObject并使用base64对其进行编码?

我花了很多时间寻找让缓冲区接受这个变量的方法,但我找不到一种有效的方法。

1 个答案:

答案 0 :(得分:0)

您需要先JSON.stringify()您的对象。

变化:

var urlEncodeString = new Buffer(queryAsObject).toString('base64');

为:

var urlEncodeString = new Buffer(JSON.stringify(queryAsObject)).toString('base64');
相关问题