ホームページ > バックエンド開発 > C++ > ASP.NETコアWeb APIにクロスオリジンリソース共有(CORS)を実装する方法は?

ASP.NETコアWeb APIにクロスオリジンリソース共有(CORS)を実装する方法は?

Linda Hamilton
リリース: 2025-01-24 18:42:13
オリジナル
819 人が閲覧しました

How to Implement Cross-Origin Resource Sharing (CORS) in ASP.NET Core Web API?

ASP.NET Core Web APIがCORSを有効にする:完全なガイドCORSは、通常、ブラウザの現在のソースとは異なるドメインに対して、WebブラウザがクロスソースHTTP要求を実行できるようにするメカニズムです。 CORSの啓発は、バックエンドアプリケーション間のシームレスな通信と、さまざまなドメインまたはポートのバックエンドWeb APIでのホスティングが不可欠であることを保証するために重要です。 cors

ASP.NETコアでCORを有効にするための優先方法は、startup.csファイルを使用することです。 ConfigureServicesメソッドで、次の行を追加してCORSパッケージをインストールし、CORSサービスを構成します。

次に、configureメソッドで、app.usemvc()を呼び出す前にcorsミドルウェアを構成します:

これにより、指定されたソースのソースが可能になります(この例では、 "

https://www.php.cn/link/63e6bc520edcba95446b5690d989f30

httpメソッド。
services.AddCors();
services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1);
ログイン後にコピー
<局>グローバル構成cors

app.UseCors(options => options.WithOrigins("http://example.com").AllowAnyMethod());
ログイン後にコピー
すべてのコントローラーと操作にCORを使用する場合は、[enablecors]プロパティをstartup.csファイルに追加できます。

configureServices:でmypolicyを定義できます

これにより、これにより、すべてのコントローラーと操作のCORが有効になり、独立したコントローラーまたは動作レベルの構成があります。

<添>カスタムヘッダーを追加

CORS構成で他のカスタムヘッダーを指定する必要がある場合は、App.USECORSステートメントでオプションオブジェクトを変更できます。

[assembly: EnableCors(typeof(MyPolicy))]
ログイン後にコピー
これにより、許容ヘッドのリストにX-My-Custom-Headerが追加されます。

<手>マニュアルヘッダーで追加された必須メソッド<
services.AddCors(options =>
{
    options.AddPolicy("MyPolicy",
        policy => policy.AllowAnyOrigin().AllowAnyMethod().AllowAnyHeader());
});
ログイン後にコピー
CORSミドルウェアの構築された代替メソッドとして、ミドルウェアを使用して、各応答に必要なヘッダーを手動で追加できます。この方法はお勧めしませんが、特に承認されたヘッダーを使用する場合は、場合によっては役立つ場合があります。

この中間部分は、すべてのリクエストに対してCORを効果的に有効にするために、指定されたヘッダーをすべての応答に追加します。 <论>結論

特定の要件によれば、CORは複数の方法でASP.NETコアで有効にすることができます。このガイドで召喚された手順によると、フロントアプリケーションとバックエンドWeb APIの間のシームレスなクロスソース通信により、クロスドメイン共有データと機能が可能になります。
app.UseCors(options => options.AllowAnyOrigin().AllowAnyMethod().AllowAnyHeader()
    .WithExposedHeaders("X-My-Custom-Header"));
ログイン後にコピー

以上がASP.NETコアWeb APIにクロスオリジンリソース共有(CORS)を実装する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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