WASM 中的环境检测:Web、Node.js 还是独立运行时?

Posted

技术标签:

【中文标题】WASM 中的环境检测:Web、Node.js 还是独立运行时?【英文标题】:Environment detection in WASM: Web, Node.js or standalone runtime? 【发布时间】:2021-03-12 04:35:39 【问题描述】:

运行 WebAssembly 模块的方式有很多种,除了 Web,Node.js 可以用 --experimental-wasm-modules 加载 wasm 模块,wasmtime 和 lucet 等独立运行时也可以运行。

那么如何检测 WASM 中的当前环境,是否可以对 wasm 模块应用限制,使其只能在特定网站上运行?

【问题讨论】:

【参考方案1】:

WebAssembly 没有内置的 I/O 功能 - 它无法访问 DOM、读取文件系统、渲染到屏幕等。为了执行任何这些任务,它需要与主机环境(最常见的是 javascript )。

因此,WebAssembly 无法检测其运行时环境。它可以询问主机它在什么环境中执行,尽管这当然可以伪造!

【讨论】:

以上是关于WASM 中的环境检测:Web、Node.js 还是独立运行时?的主要内容,如果未能解决你的问题,请参考以下文章

Node.js入门到企业Web开发中的应用

Node.js入门到企业Web开发中的应用

Node.js入门到企业Web开发中的应用

19 条 Node.js 生产环境中的最佳实践

Node.js入门到企业Web开发中的应用

node.js基础内容