javascript - 加载本地文件时出现"Cross origin requests are only supported for HTTP."错误

标签 javascript file http cross-domain cross-origin-resource-policy

我正在尝试使用 JSONLoader 将本地存储在我的计算机上的 3D 模型加载到 Three.js 中,并且该 3D 模型与整个网站位于同一目录中。

我收到“跨源请求仅支持 HTTP。” 错误,但我不知道是什么原因导致的,也不知道如何修复它。

最佳答案

我的 Crystal 球说您正在使用 file:// 加载模型或C:/ ,这与错误消息保持一致,因为它们不是 http://

因此,您可以在本地 PC 中安装网络服务器或将模型上传到其他位置并使用 jsonp并将网址更改为 http://example.com/path/to/model

原点在 RFC-6454 中定义作为

   ...they have the same
   scheme, host, and port.  (See Section 4 for full details.)

因此,即使您的文件源自同一主机 ( localhost ),但只要方案不同 ( http/file ),它们就会被视为不同的来源。

关于javascript - 加载本地文件时出现"Cross origin requests are only supported for HTTP."错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60451940/

相关文章:

javascript - Django - 复制管理 list_display

javascript - 在其他作用域中运行某个作用域的函数

java - 如何在一个 HTTP 响应中同时发送 ASCII 和二进制数据?

jquery - 从 HTTP 登录到 HTTPS

c# - 存在、读写只需一步

http - 带有超时的 Keep-Alive http header 未被 google、stackoverflow 等使用?

javascript - 使用表单数据添加 laravel CSRF token

javascript - 使用 RxJs 将分页请求转换为 Observable 流

python - 什么时候是使用 readline() 的好时机?

SQL 使用 CMD 将数据从 .sql 文件插入到表中