将响应缓冲区转换为JSON [英] Converting a Response Buffer to JSON
本文介绍了将响应缓冲区转换为JSON的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
在AWS中,我通过带有https模块的Lambda发出了一个get请求.我可以返回数据,但是当我调用callback(null, obj)
In AWS, I am issuing a get request through Lambda with the https module. I am able to return the data, but it is in the buffer format when I call callback(null, obj)
https.get(options, (res) => {
res.on('data', (d) => {
var foo = (JSON.stringify(d));
var foo1 = d.toString('utf8');
var obj = {
bar: foo,
bar1: foo2
};
callback(null, obj);
});
}).on('error', (e) => {
console.error(e);
});
返回此:
Response:
{
"bar": "{\"type\":\"Buffer\",\"data\":[31,153,38,35,...]}",
"bar1": "[{\"app_id\":1111111,\"user_id\":111111,....\"}]"
}
如何将其转换为JSON?
How do I convert this to JSON?
推荐答案
I figured it out. With tomfa's code found here: BinArraytoJson I simply did:
var binArrayToJson = function(binArray) {
var str = "";
for (var i = 0; i < binArray.length; i++) {
str += String.fromCharCode(parseInt(binArray[i]));
}
return JSON.parse(str)
}
然后:
JSON.parse(binArrayToJson(yourBinArray));
这篇关于将响应缓冲区转换为JSON的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文