我试图在我的ASP.NET Core Web API上启用跨源资源共享,但是我遇到了麻烦。
该EnableCors属性接受policyName类型string作为参数:
EnableCors
policyName
string
// Summary: // Creates a new instance of the Microsoft.AspNetCore.Cors.Core.EnableCorsAttribute. // // Parameters: // policyName: // The name of the policy to be applied. public EnableCorsAttribute(string policyName);
是什么policyName意思,如何在ASP.NET Core Web API上配置 CORS ?
您必须使用以下ConfigureServices方法在应用程序启动时配置CORS策略:
ConfigureServices
public void ConfigureServices(IServiceCollection services) { services.AddCors(o => o.AddPolicy("MyPolicy", builder => { builder.AllowAnyOrigin() .AllowAnyMethod() .AllowAnyHeader(); })); // ... }
使用CorsPolicyBuilder,builder您可以根据需要配置策略。现在,您可以使用此名称将策略应用于控制器和操作:
CorsPolicyBuilder
builder
[EnableCors("MyPolicy")]
或将其应用于每个请求:
public void Configure(IApplicationBuilder app) { app.UseCors("MyPolicy"); // ... // This should always be called last to ensure that // middleware is registered in the correct order. app.UseMvc(); }