ホームページ > バックエンド開発 > C++ > 特にAzure Free Planで、クロスドメインリクエスト用にASP.NETコアWeb APIでCORを有効にする方法は?

特にAzure Free Planで、クロスドメインリクエスト用にASP.NETコアWeb APIでCORを有効にする方法は?

Mary-Kate Olsen
リリース: 2025-01-24 18:39:10
オリジナル
309 人が閲覧しました

How to Enable CORS in ASP.NET Core Web API for Cross-Domain Requests, Especially on Azure Free Plan?

ASP.NET Core Web API の CORS を使用したクロスドメイン リクエストの問題の解決

Cross-Origin Resource Sharing (CORS) は、フロントエンド コンポーネントとバックエンド コンポーネントが別々にホストされている Web アプリケーションにとって重要です。 このガイドでは、特に Azure 無料プランに展開する場合の、ASP.NET Core Web API における一般的な CORS 構成の問題に対処します。

課題:

別のドメインでホストされているクライアント Web サイトで Web API にアクセスしようとすると、CORS 制限が発生しました。 Microsoft の標準ガイダンスでは、すべての API エンドポイントの問題を完全に解決できませんでした。

解決策: 合理化された CORS 構成

この解決策には、簡素化された CORS セットアップが含まれます。

  1. 必要なパッケージをインストールします: まず、CORS NuGet パッケージをインストールします:

    <code class="language-bash">Install-Package Microsoft.AspNetCore.Cors</code>
    ログイン後にコピー
  2. Startup.cs で CORS を構成します: ConfigureServices メソッド内に CORS サービスを追加します:

    <code class="language-csharp">public void ConfigureServices(IServiceCollection services)
    {
        services.AddCors();
        services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1);
    }</code>
    ログイン後にコピー
  3. Configure メソッドで CORS を有効にする: UseCors ミドルウェアを使用して、Configure メソッドで CORS を有効にします。 この例では、http://example.com:

    からのリクエストを許可します。
    <code class="language-csharp">public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
    {
        app.UseCors(options => options.WithOrigins("http://example.com").AllowAnyMethod());
        app.UseMvc();
    }</code>
    ログイン後にコピー

重要な考慮事項:

  • 単純な CORS ポリシー (特定の生成元を許可する) の場合、カスタム ポリシーは必要ありません。
  • "http://example.com" を実際のクライアント ドメインに置き換えます。
  • AllowAnyMethod() は、すべての HTTP メソッドへのアクセスを許可します。 セキュリティを強化するには、許可されるメソッドを明示的に指定します。
  • 高度な CORS 構成とより詳細な制御については、Microsoft の公式ドキュメントを参照してください。

以上が特にAzure Free Planで、クロスドメインリクエスト用にASP.NETコアWeb APIでCORを有効にする方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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