ホームページ > バックエンド開発 > Golang > Firefox OS アプリが Go サーバーにリクエストを行うときに発生する「クロスオリジン リクエストがブロックされました」エラーを修正する方法

Firefox OS アプリが Go サーバーにリクエストを行うときに発生する「クロスオリジン リクエストがブロックされました」エラーを修正する方法

Patricia Arquette
リリース: 2024-12-18 09:30:11
オリジナル
572 人が閲覧しました

How to Fix

Go および Firefox OS アプリでの「クロスオリジン リクエストのブロック」について

「クロスオリジン リクエストのブロック」として知られる問題が発生する宛先ドメインがリクエストの送信元と同じではないために HTTP リクエストが拒否された場合。これは通常、Web アプリケーションで異なるドメイン間でリクエストを行うときに発生します。

提供された Go コードでは、サーバーは "Access-Control-Allow-Origin" ヘッダーを " に設定することでクロスオリジン リクエストを許可しようとしています。 *」を使用すると、あらゆるドメインからのリクエストが許可されます。ただし、Firefox OS アプリケーションは依然として問題に直面しています。

問題は、アプリケーションで使用される JavaScript XMLHttpRequest オブジェクトにあります。 CORS を使用せずにクロスサイト接続を有効にするには、XMLHttpRequest コンストラクターの「mozSystem」フラグを true に設定する必要があります。

Firefox OS アプリのソリューション

JavaScript コード、 replace:

var request = new XMLHttpRequest();
ログイン後にコピー

with:

var request = new XMLHttpRequest({mozSystem: true});
ログイン後にコピー

Manifest Modification

さらに、アプリケーションのマニフェストに「systemXHR」権限が含まれていることを確認します。

"permissions": {
       "systemXHR" : {},
}
ログイン後にコピー

これらの調整を行うことで、Firefox OS アプリは次のようになります。 Go サーバーに対してクロスオリジン POST リクエストを作成し、必要な応答を取得できます。

以上がFirefox OS アプリが Go サーバーにリクエストを行うときに発生する「クロスオリジン リクエストがブロックされました」エラーを修正する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート