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 还是独立运行时?的主要内容,如果未能解决你的问题,请参考以下文章