[英]JS/NodeJS JSON Buffer to String
我真的很难将 Buffer 转换为字符串。
对于此代码
let results = await generateRandomNumber(seed);
console.log(results);
res.status(200).json({
"status": 200,
"number": results
});
}
我收到 console.log(results);
{
result: <Buffer ee 62 e7 6f c7 4b 7f 57 86 20 bd ba 52 74 4a fc 66 89 70 bb>
}
响应 JSON 是:
{"status":200,"number":{"result":{"type":"Buffer","data":[238,98,231,111,199,75,127,87,134,32,189,186,82,116,74,252,102,137,112,187]}}}
我想要实现的只是数字实际上变成了数字而不是缓冲区。
文档中有 node buffer.read <primitive type>函数可供使用。
让我们以buf.readBigInt64BE([offset])
为例
const buf = Buffer.from([0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff]);
console.log(buf.readBigUInt64BE(0));
你的缓冲区有 20 个十六进制值,如果你想把它转换成一个数字,我不确定会有一个类型来保存这样的东西。
你试过这个吗?
results.toString('utf8')
所以你可以访问你的 json.data f
你可以试试这样
let results = await generateRandomNumber(seed);
var bufferData = Buffer.from(results);
var resultString = bufferData.toString('utf8');
console.log(results);
res.status(200).json({
"status": 200,
"number": resultString
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.