1. ホーム
  2. jquery

[解決済み】XMLHttpRequest Originのnullが許可されない file:///からfile:///へのAccess-Control-Allow-Origin (Serverless)

2022-04-13 07:03:15

質問

インデックスファイルを起動することで、ローカルにダウンロードして実行できるウェブサイトを作成しようとしています。

すべてのファイルはローカルにあり、オンラインではリソースを使用していません。

jQueryのAJAXSLTプラグインを使って、XSLテンプレート(サブディレクトリ)を持つXMLファイルを処理しようとすると、以下のエラーが発生します。

XMLHttpRequest cannot load file:///C:/path/to/XSL%20Website/data/home.xml. Origin null is not allowed by Access-Control-Allow-Origin.

XMLHttpRequest cannot load file:///C:/path/to/XSL%20Website/assets/xsl/main.xsl. Origin null is not allowed by Access-Control-Allow-Origin.

リクエストを行うインデックスファイルは file:///C:/path/to/XSL%20Website/index.html に格納され、使用される JavaScript ファイルは file:///C:/path/to/XSL%20Website/assets/js/ .

この問題を解決するにはどうしたらよいですか?

解決方法は?

ローカルのウェブサーバーを実行することができない場合、Chrome のアクセス権を file:// ファイルをブラウザのスイッチで変更することができます。いくつか調べた結果、私は 本論 の冒頭で、ブラウザの切り替えについて触れています。でChromeインスタンスを実行します。

chrome.exe --allow-file-access-from-files

開発環境では許容されるかもしれませんが、それ以外ではほとんどありません。 確かに、常時オンにしておくことはないでしょう。これはまだ未解決の問題のようです(2011年1月現在)。

こちらもご覧ください。 ChromeでjQuery getJSONがローカルファイルを使用する際の問題点