„Cross-Origin-Anfragen werden nur über HTTP unterstützt.' Fehler beim Laden der lokalen Datei
P粉128563140
P粉128563140 2023-08-23 15:30:29
0
2
480

Ich versuche, mit JSONLoader ein lokal auf meinem Computer gespeichertes 3D-Modell in Three.js zu laden, und das 3D-Modell befindet sich im selben Verzeichnis wie die gesamte Website.

Ich erhalte den Fehler„Cross-Origin-Anfragen werden nur über HTTP unterstützt.“, aber ich weiß nicht, was ihn verursacht oder wie ich ihn beheben kann.

P粉128563140
P粉128563140

Antworte allen (2)
P粉868586032

明确地说 - 是的,错误表明您无法将浏览器直接指向file://some/path/some.html

这里有一些选项可以快速启动本地网络服务器,让您的浏览器呈现本地文件

Python 2

如果你安装了Python...

  1. 使用命令cd /path/to/your/folder将目录更改为文件some.html或文件所在的文件夹

  2. 使用命令python -m SimpleHTTPServer

    启动 Python Web 服务器

这将启动一个网络服务器来托管您的整个目录列表,网址为http://localhost:8000

  1. 您可以使用自定义端口python -m SimpleHTTPServer 9000为您提供链接:http://localhost:9000

此方法内置于任何 Python 安装中。

Python 3

执行相同的步骤,但使用以下命令python3 -m http.server

VSCode

如果您使用Visual Studio Code,您可以安装Live Server扩展,提供本地 Web 服务器环境。

Node.js

或者,如果您需要更具响应性的设置并且已经使用了 Nodejs...

  1. 通过输入npm install -g http-server安装http-server

  2. 切换到您的工作目录,some.html所在的位置

  3. 通过发出http-server -c-1启动您的http服务器

这会启动 Node.js httpd,它将目录中的文件作为静态文件提供,可从http://localhost:8080

红宝石

如果您的首选语言是 Ruby ...Ruby Gods 说这也有效:

ruby -run -e httpd . -p 8080

PHP

当然PHP也有它的解决方案。

php -S localhost:8000
    P粉710478990

    我的水晶球说您正在使用file://C:/加载模型,这与错误消息相符,因为它们不是http://

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

    起源在RFC-6454中定义为

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

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

      Neueste Downloads
      Mehr>
      Web-Effekte
      Quellcode der Website
      Website-Materialien
      Frontend-Vorlage
      Über uns Haftungsausschluss Sitemap
      Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!