【发布时间】:2019-07-29 17:37:33
【问题描述】:
这是我的数据:
"buffer": {
"type": "Buffer",
"data": [
8,
4,
18,
32,
203,
243,
203,
190,
254,
80,
185,
227,
225,
187,
114,
219,
243,
87,
83,
254,
248,
95,
139,
1,
26,
198,
149,
158,
30,
44,
146,
237,
166,
70,
199,
9,
26,
32,
138,
251,
102,
14,
230,
244,
102,
250,
142,
53,
210,
190,
9,
23,
169,
98,
14,
156,
148,
99,
168,
204,
145,
108,
191,
223,
189,
58,
202,
61,
52,
254
]
},
我想把它转换成一个字符串。到目前为止,尝试了以下提到的事情:
- .toString()
- .new 字符串(缓冲区)
- String.fromCharCode.apply(null, buffer)
- buffer.map(c => String.fromCharCode(c)).join('') 等
顺便说一句,我无法访问数据,因为当我尝试访问数据时它会抛出未定义的,所以我传递了完整的对象,在这种情况下是要解析的缓冲区,它没有返回正确的结果。它正在返回"\b Ì jQßô\f:l{Ê3DZz²ú_¿;t_ ¹ÐÇævËçÕ§MAjHríþ;!/Ýdãi",
有人可以帮我解决我做错了什么吗?
【问题讨论】:
-
您需要分享获取缓冲区的代码
-
which is not returning the proper result.那么正确的结果是什么是?这些数字看起来不会产生可读的 ascii。 -
@TienDuong 当我调用其函数时,我将缓冲区作为 Fabric 节点 js sdk 响应的一部分。
-
没有这样的具体代码。它只是一个函数调用。
let response = await channel.queryInfo(peer, true);如果有帮助,这里是函数调用 -
@tkausl 是的,我没有考虑过这种可能性。它可能会返回我现在得到的任何东西。
标签: javascript node.js