net core配置跨域
程序员文章站
2024-01-21 19:19:04
...
什么是跨域?
浏览器从一个域名的网页去请求另一个域名的资源时,域名、端口、协议任一不同,都是跨域
跨域的几种情况
1、端口和协议的不同
2、localhost和127.0.0.1虽然都指向本机,但也属于跨域
一般情况WebApi都是跨域请求,没有设置跨域一般会报以下错误
关键字 Access-Control-Allow-Origin cors
No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:48057' is therefore not allowed access.
ASP.net Core 跨域有两种,全局和区域
1.设置特定来源可以跨域,打开Startup.cs文件 修改ConfigureServices方法
添加
services.AddCors(options =>
{
// Policy 名稱 CorsPolicy 是自訂的,可以自己改
options.AddPolicy("qwer", policy =>
{
// 設定允許跨域的來源,有多個的話可以用 `,` 隔開
policy.WithOrigins("http://localhost:8080", "http://192.168.0.86:8080")
.AllowAnyHeader()
.AllowAnyMethod()
.AllowCredentials();
});
});
修改Configure方法
添加
app.UseCors("qwer");//必须位于UserMvc之前
2.允许所有来源 不建议使用
修改ConfigureServices方法
//配置跨域处理,允许所有来源:
services.AddCors(options =>
options.AddPolicy("自定义的跨域策略名称",
p => p.AllowAnyOrigin())
);
修改Configure方法
添加
app.UseCors("qwer");//必须位于UserMvc之前
下一篇: Linux设置时间同步