【问题标题】:How can I use node.js buffer library in client side javascript如何在客户端 javascript 中使用 node.js 缓冲区库
【发布时间】:2019-05-21 11:20:25
【问题描述】:

我想在我的网站中使用缓冲区库(以便处理二进制数据)。这是我的用例:

const privateKey = Buffer.from('<User's private key here>', 'hex');

buffer 在 node.js 中运行良好,无需任何额外的 npm 模块或脚本。但不知何故,它在网络浏览器中不起作用。它显示错误

未捕获的引用错误:缓冲区未定义

虽然我们需要在 html 文件中添加库脚本文件。请帮我解决这个问题?

【问题讨论】:

标签: javascript node.js browser buffer


【解决方案1】:

将独立脚本从https://github.com/feross/buffer添加到HTML

    <script src="https://bundle.run/buffer@6.0.3"></script>

然后在JS中

const privateKey = buffer.Buffer.from(PRIVATE_KEY_1, "hex");

【讨论】:

    【解决方案2】:

    缓冲区对象在 Node.js 之外不可用,即在浏览器中。这是因为(如果您不知道)Node.js 是一个 javascript 运行时,因此 Node.js 特定功能不存在于浏览器环境中,因为它们与 V8 引擎相关联,而不是与浏览器中的 V8 引擎相关联(注意这里的区别)。

    所以本质上,uncaught refernce error: buffer is not defined 意味着这个 this 在浏览器中不存在。

    https://nodejs.org/api/buffer.html#buffer_new_buffer_array

    【讨论】:

      猜你喜欢
      • 2017-07-26
      • 2013-10-27
      • 2020-08-09
      • 1970-01-01
      • 2023-03-14
      • 2015-09-18
      • 1970-01-01
      • 1970-01-01
      • 2020-01-01
      相关资源
      最近更新 更多