2

私がテストしているメソッドの 1 つは、XMLHttpRequest を「http://localhost:4848/qrs/extension/schema?xrfkey=asdfasdfdf」に送信します。次のようなエラーが表示されます -

XMLHttpRequest cannot load http://localhost:4848/qrs/extension/schema?xrfkey=asdfasdfdf. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:9875' is therefore not allowed access. The response had HTTP status code 404.

これで、テストが「localhost:9876」で提供され、localhost:4848 にアクセスしようとすると、実際にはクロス ドメイン ポリシーに違反していることがわかります。Karma プロキシ設定を確認して試してみました -

proxies: {
   '/qrs': 'http://localhost:4848/qrs'
}

しかし、これを行うと、実際には「http://localhost:9876/qrs/extension/schema?xrfkey=asdfasdfdf」からコンテンツが提供されます。しかし、この方法ではクライアント コードは機能しません。クライアント コードは XHR リクエストを「http://localhost:4848/qrs/ .....」に直接送信しますが、「http://localhost:9876/qrs/ .....」には送信しないためです。

どうすればこれを解決できますか?

また、構成ファイルにさまざまなヘッダーを設定するオプションがある方がよいのではないでしょうか? ここでテストについて話していることを少なくとも知っておいてください(つまり、本番環境ではありません)。

前もって感謝します。

4

0 に答える 0