首頁 >後端開發 >C++ >如何在ASP.NET Core中配置交叉原始資源共享(CORS)?

如何在ASP.NET Core中配置交叉原始資源共享(CORS)?

Susan Sarandon
Susan Sarandon原創
2025-01-28 01:56:10274瀏覽

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

ASP.NET Core 中的跨域資源共享 (CORS) 設定

ASP.NET Core 中的跨域資源共用 (CORS) 是一項安全功能,可讓您的 Web 應用程式向來自不同來源(例如不同的網域、協定或連接埠)的資源發出請求。要啟用 CORS,您需要設定 CORS 策略。

建立 CORS 策略

ASP.NET Core 中的 EnableCors 屬性接受一個 policyName 參數,該參數指定要套用的 CORS 策略的名稱。策略名稱只是一個字串標識符,您可以稍後使用它來引用該策略。

要建立 CORS 策略,您可以在 Startup 類別的 ConfigureServices 方法中使用 IServiceCollection.AddCors 方法:

<code class="language-csharp">public void ConfigureServices(IServiceCollection services)
{
    services.AddCors(options =>
    {
        options.AddPolicy("MyCorsPolicy", builder =>
        {
            builder.WithOrigins("http://example.com", "https://www.contoso.com")
                   .AllowAnyMethod()
                   .AllowAnyHeader();
        });
    });
}</code>

在此範例中,建立了一個名為「MyCorsPolicy」的 CORS 策略。此策略允許來自兩個特定來源(“https://www.php.cn/link/8be904ad045c578053fc6052578f9324 HTTP 方法和標頭。

應用 CORS 策略

建立 CORS 策略後,您可以將其套用至特定的控制器、操作或整個應用程式。若要將其應用於單一控制器,請使用 [EnableCors] 屬性:

<code class="language-csharp">[EnableCors("MyCorsPolicy")]
public class MyController : Controller
{
    // ...
}</code>

要將策略套用至每個要求,請在 Configure 方法中將 UseCors 中間件新增至應用程式管道:

<code class="language-csharp">public void Configure(IApplicationBuilder app)
{
    app.UseCors("MyCorsPolicy");

    // ...
}</code>

這將確保對應用程式的所有請求都受「MyCorsPolicy」策略的約束。

以上是如何在ASP.NET Core中配置交叉原始資源共享(CORS)?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn