繁体   English   中英

JS/NodeJS JSON 缓冲区到字符串

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

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM