首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Web TypeError: NetworkError试图获取资源

Web TypeError: NetworkError试图获取资源
EN

Stack Overflow用户
提问于 2019-12-31 14:39:23
回答 1查看 1.2K关注 0票数 6

我试图从C编译一个简单的hello程序到web程序集。我一直在遵循MDN (https://developer.mozilla.org/en-US/docs/WebAssembly/C_to_wasm)提供的指南。在通过Firefox 71导航到HTML页面时,我会收到一个TypeError: “NetworkError when attempting to fetch resource.”错误。

下面是C代码:

代码语言:javascript
复制
#include <stdio.h>

int
main(int argc, char *argv[]) {
    printf("hello, world!");
    return 0;
}

以及用于编译的命令:

代码语言:javascript
复制
emcc hello.c -s WASM=1 -o hello.html

我是不是遗漏了什么?还有其他人遇到过这个问题吗?提前谢谢你。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-12-31 14:47:06

我也遇到了同样的问题,我尝试了几种解决方案,这些方法似乎奏效了:

(1)查看emrun See服务器是否可以通过以下方式运行该文件:

代码语言:javascript
复制
emrun --no_browser --port 8080 .

(并在浏览器中打开站点,即localhost:8080)

(2)如果没有,那么尝试使用这个git回购来实现emsdk

代码语言:javascript
复制
git clone https://github.com/juj/emsdk.git
cd emsdk
./emsdk install latest
./emsdk activate latest
source ./emsdk_env.sh

然后尝试方法(1)中的emrun

CORS已启用,从而防止下载.wasm文件。因此,运行一个小型服务器来访问html文件是可行的(这包括一个通过python3 -m http.server的简单python服务器!)

开发人员指南中也提到了这一点:

最后,为了实际运行程序,我们不能简单地在web浏览器中打开

文件,因为文件协议方案不支持跨源请求。我们必须通过HTTP实际提供输出文件。

您可以从这里引用所有这些信息:https://webassembly.org/getting-started/developers-guide/

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59545455

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档