微信小程序 使用nodejs解密 报错:Buffer is not defined;

田超
  • 118

在开发微信小程序的时候,遇到了解密问题,使用官网给的nodejs版的案例,报错出现:

clipboard.png

请问各位大神这是什么原因?怎么解决?

回复
阅读 4.6k
3 个回答
✓ 已被采纳

如果你需求要跟设备之间交互,要先将你的内存buffer生成视图:var dv = new DataView(Buffer),然后需要用dataView.setInt8(0,data)等方法写入内存,或者dataView.getUint8(0)读取内存;如果你只是想将arrayBuffer转化为字符串,可以String.fromCharCode.apply(null, new Uint16Array(buffer));


下面是dataview写入和读取内存的方法参考:
setInt8:写入1个字节的8位整数。
setUint8:写入1个字节的8位无符号整数。
setInt16:写入2个字节的16位整数。
setUint16:写入2个字节的16位无符号整数。
setInt32:写入4个字节的32位整数。
setUint32:写入4个字节的32位无符号整数。
setFloat32:写入4个字节的32位浮点数。
setFloat64:写入8个字节的64位浮点数,


getInt8:读取1个字节,返回一个8位整数。
getUint8:读取1个字节,返回一个无符号的8位整数。
getInt16:读取2个字节,返回一个16位整数。
getUint16:读取2个字节,返回一个无符号的16位整数。
getInt32:读取4个字节,返回一个32位整数。
getUint32:读取4个字节,返回一个无符号的32位整数。
getFloat32:读取4个字节,返回一个32位浮点数。
getFloat64:读取8个字节,返回一个64位浮点数。

Buffer是Nodejs的东西,ArrayBuffer才是ES标准里的东西。微信小程序不是跑在Node里的。

你知道吗?

宣传栏