ホームページ  >  記事  >  ウェブフロントエンド  >  クロスオリジンファイル転送での「リクエストヘッダーフィールドは許可されていません」エラーを修正する方法?

クロスオリジンファイル転送での「リクエストヘッダーフィールドは許可されていません」エラーを修正する方法?

DDD
DDDオリジナル
2024-11-01 13:36:02110ブラウズ

How to Fix

クロスオリジン ファイル転送での「リクエスト ヘッダー フィールドは許可されていません」エラーの解決

POST リクエスト経由でファイルを送信しようとすると、開発者は次のエラーが発生する場合があります。リクエスト ヘッダー フィールド Content-Type は、Access-Control-Allow-Headers によって許可されていません。」このエラーは、サーバーが指定されたヘッダー フィールドを許可していないことを示します。

最初は、「Access-Control-Allow-Origin」や「Access-Control-Allow-」などのさまざまなヘッダーを追加してこのエラーを解決しようとしました。 「メソッド」を実行すると、次の新しいエラーが発生しました。「リクエスト ヘッダー フィールド Access-Control-Allow-Origin は、Access-Control-Allow-Headers によって許可されていません。」

さらに調査したところ、jQuery ドキュメントで警告されていることが判明しました。クロスドメインリクエストのコンテンツタイプを「application/x-www-form-urlencoded」、「multipart/form-data」、または「text/plain」以外に設定することに対して反対します。 Angular のデフォルトのコンテンツ タイプは「application/json」で、サーバーへのプリフライト OPTIONS リクエストをトリガーします。

この問題を解決するには、Angular のデフォルトのヘッダーを上書きするか、Access-Control-Allow-Headers を許可します。サーバー側。以下は、Angular のデフォルトのヘッダーをオーバーライドする例です:

$http.post(url, data, {
    headers : {
        'Content-Type' : 'application/x-www-form-urlencoded; charset=UTF-8'
    }
});

以上がクロスオリジンファイル転送での「リクエストヘッダーフィールドは許可されていません」エラーを修正する方法?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。