最も単純で推奨されるアプローチは、
nugetパッケージを活用することです。
Microsoft.AspNetCore.Cors
<code>Install-Package Microsoft.AspNetCore.Cors</code>
ファイル内で、CORSサービスを登録してください:
Startup.cs
<code class="language-csharp">public void ConfigureServices(IServiceCollection services) { services.AddCors(); // ... other service configurations }</code>
Configure
app.UseCors
"http://example.com"
<code class="language-csharp">public void Configure(IApplicationBuilder app, IWebHostEnvironment env, ... ) { app.UseCors(options => options.WithOrigins("http://example.com").AllowAnyMethod()); // ... other middleware configurations }</code>メソッド2:手動ヘッダーインジェクション(フォールバック方法)
ミドルウェアアプローチが効果的でないことが判明した場合、HTTP応答にCORSヘッダーを直接追加できます。 これは、保守性が低下するため、一般にあまり好まれません。
このミドルウェアをまたは同等のミドルウェア処理ルーティングの前に配置することを忘れないでください。<code class="language-csharp">app.Use(async (context, next) => { context.Response.Headers.Add("Access-Control-Allow-Origin", "http://example.com"); context.Response.Headers.Add("Access-Control-Allow-Methods", "GET, POST, PUT, PATCH, DELETE"); context.Response.Headers.Add("Access-Control-Allow-Headers", "X-PINGOTHER, Content-Type, Authorization"); await next.Invoke(); });</code>
重要な考慮事項:
app.UseRouting()
ワイルドカードオリジン( ` "*"
生産環境におけるwutorigins`。):** Avoid using the wildcard
。for
を含めてください
AddCustomHeader
"Content-Type"
この拡張ガイドは、ASP.NETコアWeb APIにCORを実装するためのより明確な説明と改善された構造を提供します。 ニーズに最適な方法を選択し、セキュリティベストプラクティスに優先順位を付けます。以上がASP.NET Core Web APIでCORSを有効にする方法?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。