ASP.NET Core 配置跨域(CORS)


1.安裝程序CORS程序包

Install-Package Microsoft.AspNetCore.Mvc.Cors

一般默認都帶了此程序包的

2.配置CORS服務

Startup類,ConfigureServices方法里,添加如下代碼:

services.AddCors(option=>option.AddPolicy("cors", policy => policy.AllowAnyHeader().AllowAnyMethod().AllowCredentials().AllowAnyOrigin()));

策略名稱可以自定義

請一定注意看以下內容:

新版的CORS中間件已經阻止使用允許任意Origin,即 AllowAnyOrigin 設置了也不會生效,詳情如下:

解決辦法:使用 WithOrigins 來設置 Origin

例子:

policy.AllowAnyHeader().AllowAnyMethod().AllowCredentials().WithOrigins(new []{"http://xxx.xxx.com"});

3.配置CORS中間件

Startup類,Configure方法里,添加如下代碼:

public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
    if (env.IsDevelopment())
    {
        app.UseDeveloperExceptionPage();
    }
    app.UseCors("cors");
    app.UseMvc();
}

主要是 app.UseCors("cors");這句代碼,需要注意的是必須放在 UseMvc 之前,且策略名稱必須是已經定義的


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM