1. ホーム
  2. javascript

[解決済み] 同一ドメインでCORSエラー?

2022-10-02 08:25:29

質問

今、奇妙な CORS の問題に遭遇しています。

これがエラーメッセージです。

XMLHttpRequest cannot load http://localhost:8666/routeREST/select?q=[...] 
Origin http://localhost:8080 is not allowed by Access-Control-Allow-Origin

サーバーは2台です。

  • localhost:8666/routeREST/ : これはシンプルなPythonのBottleサーバーです。
  • localhost:8080/ : PythonのsimpleHTTPserverで、Javascriptアプリケーションを動かしています。このアプリケーションは、上記のサーバー上でAjaxリクエストを実行しています。

何が問題である可能性があるかについての任意の考え?

EDITです。

と...ポートが問題だったんですね。ご回答ありがとうございます :)

誰かが同様に Python ボトル サーバーを使用している場合、CORS の問題を解決するには、この投稿で与えられた回答に従うことができます。 ボトルPy。jQuery AJAX リクエストの CORS を有効にする

どのように解決するのですか?

がある場合のみ、同じとみなされます。 プロトコル , ホスト ポート は同じです。 同じオリジン・ポリシー

これを有効にしたい場合は、以下のように クロスオリジンリソース共有(cors) ヘッダを追加することによって行います。Mozilla は の例

レスポンスにヘッダとしてAccess-Control-Allow-Originを追加する必要があります。すべての人に許可するために(おそらく NOT を実行してください)。

Access-Control-Allow-Origin: *

複数のオリジンをサポートする必要がある場合(例えば、両方の example.comwww.example.com ) を設定し Access-Control-Allow-Origin の値を返します。 Origin -ヘッダーの値に返信してください(Originがホワイトリスト入りしていることを確認した後)。

また、一部のリクエストは OPTION-method を持つ preflight-request を送信するため、独自のコードを書く場合はそれらのリクエストも処理しなければならないことに注意してください。Mozilla の の例を参照してください。 .