我正在尝试在.net core 2.2项目中为我的api设置cors策略。
services.AddCors(options =>
{
options.AddPolicy("policy1", builder =>
{
builder
.WithOrigins(backendConfig.BACKOFFICE_ORIGIN)
.WithMethods("GET", "POST")
.WithHeaders("Content-Type");
});
options.AddPolicy("policy2", builder =>
{
builder
.WithOrigins(backendConfig.BACKOFFICE_ORIGIN)
.WithMethods("PUT")
.WithHeaders("Content-Type");
});
});
然后在“配置”中执行以下操作:
app.UseCors("policy1");
app.UseCors("policy2");
我添加了
[EnableCors("policy1")]
和
[EnableCors("policy2")]
到两个不同的端点。
但是当使用ajax调用第二个端点时,我总是收到
访问CORS策略已阻止从原点“ https://localhost:44377/campaigns/default_campaign”获取“ http://localhost:3000”的访问:在飞行前响应中,Access-Control-Allow-Methods不允许方法PUT。
事件,如果属性 在其上设置了[EnableCors(“ policy2”)]。
两个端点完全不同。
有什么想法吗?