内容目录
Startup 中,添加一个静态变量
readonly string MyAllowSpecificOrigins = "_myAllowSpecificOrigins";
services 中配置全局放通
services.AddCors(options =>
{
options.AddPolicy(MyAllowSpecificOrigins,
builder => builder.AllowAnyHeader()
.AllowAnyMethod()
.AllowAnyOrigin());
});
中间件中放置允许跨域
app.UseHttpsRedirection();
app.UseDefaultFiles(Program.Defaultfileoptions);
app.UseStaticFiles();
app.UseRouting();
#if CORS
app.UseCors(MyAllowSpecificOrigins);
#endif
配置完毕,要设置哪些 Controller 或 Action 允许跨域。
如果要全局配置跨域,要在中间件的路由配置中加上
.RequireCors(MyAllowSpecificOrigins)
示例:
app.UseEndpoints(endpoints =>
{
endpoints.MapControllers().RequireCors(MyAllowSpecificOrigins);
// 添加 signalR 服务
// endpoints.MapHub<MessageHubs>("/Message");
});
如果你只想对某个 Controller 或 Action 开放跨域,则在 Controller 或 Action 前加上注释
[EnableCors]
文章评论