javascript 运行HTML/JS文件时拒绝CORS请求[重复]

2lpgd968  于 2023-01-19  发布在  Java
关注(0)|答案(1)|浏览(215)
    • 此问题在此处已有答案**:

"Cross origin requests are only supported for HTTP." error when loading a local file(30个答案)
Access to Script at ' from origin 'null' has been blocked by CORS policy(5个答案)
昨天关门了。
我有一个使用p5.min.jsHTML/CSS/JS程序,它工作得非常好。但是,每当我用它加载image / JSON / font文件时,它给我以下错误:
CORS策略已阻止从源"null"访问位于"file:///C:/Users/.../Fonts/RubikMonoOne-Regular. ttf"的XMLHttpRequest:只有以下协议方案支持跨源请求:http、数据、隔离应用程序、chrome扩展、chrome不受信任、https、edge。

    • 代码中引发错误的部分:**
let font;
function preload() {
    font = loadFont("./Fonts/RubikMonoOne-Regular.ttf"); // loadFont stems from p5.js
}

我不确定是什么原因导致了这个错误,因为我没有尝试做任何花哨的事情,只是运行p5js loadFont命令。我不知道为什么它甚至是一个跨源请求,因为它们即使在同一个目录下也不起作用。我只是在我的桌面上运行这个文件,而不是使用Web或localhost server
我在网上找到了几个答案,但没有一个对我有效。所有答案似乎都是针对已部署的服务器或本地主机的。作为参考,我使用的是Microsoft Edge,但Chrome也不起作用。
我找到了一个建议运行MS Edge / Chrome via cmd的答案:

–-allow-file-access-from-files --disable-web-security --user-data-dir --disable-features=CrossSiteDocumentBlockingIfIsolating` but in both cases that just tried to open an invalid link `xn---allow-file-access-from-files-k71r/

如果可以的话,我希望避免运行localhost服务器,因为那也给我带来了麻烦。但是,我希望将文件上传到fxhash,所以任何解决方案都需要通用。
我不知道为什么它会变得如此复杂,我认为这将是一个超级容易的过程,因为它只需要双击一个HTML文件就可以运行它,而无需服务器等。

相关问题