「クロスオリジンリクエストはHTTP経由でのみサポートされます。」ローカルファイルのロードエラー
P粉128563140
P粉128563140 2023-08-23 15:30:29
0
2
494

JSONLoader を使用して、コンピュータにローカルに保存されている 3D モデルを Three.js にロードしようとしていますが、3D モデルは Web サイト全体と同じディレクトリにあります。

「クロスオリジン リクエストは HTTP 経由でのみサポートされます。」 エラーが表示されますが、原因や修正方法がわかりません。

P粉128563140
P粉128563140

全員に返信 (2)
P粉868586032

明確にしておきます - はい、このエラーは、ブラウザーでfile://some/path/some.html

を直接指定できないことを示しています。

ここでは、ローカル Web サーバーを迅速に起動し、ブラウザーにローカル ファイルをレンダリングさせるためのいくつかのオプションを示します。

Python 2

Python がインストールされている場合...

  1. コマンド

    cd /path/to/your/folder を使用します。ディレクトリをファイルsome.htmlまたはファイルが存在するフォルダーに変更します

  2. コマンド

    python -m SimpleHTTPServerを使用して、Python Web サーバーを起動します。

これにより、

http://localhost:8000でディレクトリ リスト全体をホストする Web サーバーが起動します。

    カスタム ポートを使用できます
  1. python -m SimpleHTTPServer 9000リンクが表示されます:http://localhost:9000
このメソッドは、Python インストールに組み込まれています。

Python 3

同じ手順を実行しますが、次のコマンドを使用します

python3 -m http.server

VSコード

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
  4. を発行して http サーバーを起動します。

    これにより、Node.js httpd が開始され、ディレクトリ内のファイルが静的ファイルとして提供されます。

    http://localhost:8080
から入手できます。

ルビーあなたの好みの言語が Ruby なら...Ruby の神様は、これもうまくいくと言っています:

リーリー

PHP

もちろん、PHP にもソリューションがあります。

リーリー
いいねを押す+0
    P粉710478990

    私の水晶玉は、file://またはC:/を使用してモデルをロードしていると言っていますが、これは http:// # ではないため、エラー メッセージと一致します。

    ##したがって、ローカル PC に Web サーバーをインストールするか、モデルを別の場所にアップロードして jsonp を使用し、URL を http://example.com/path/to/model

    に変更することができます。

    Origin は

    RFC-6454として定義されています リーリー

    したがって、ファイルが同じホスト (

    localhost) からのものであっても、スキームが異なる限り (http/file)、それらは異なるものとみなされます。 )の由来。

    いいねを押す+0
      最新のダウンロード
      詳細>
      ウェブエフェクト
      公式サイト
      サイト素材
      フロントエンドテンプレート
      私たちについて 免責事項 Sitemap
      PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!