CORS错误:“ Access-Control-Allow-Origin”标头包含多个值“ http:// localhost:3000,*”,但仅允许一个

时间:2019-04-03 17:31:37

标签: asp.net-core cors fetch-api

我正在尝试使用对.Net Core应用程序的Fetch API进行GET调用。

这是我的API调用:

const response = await fetch(process.env.REACT_APP_API_HOST,
        {
          method:'get' 
         }      
      );

这是在服务器端设置的CORS: 在ConfigureServices中

 services.AddCors(options =>
                 options.AddPolicy("NewPolicy", p => p.WithOrigins("http://localhost:3000")
                 .WithMethods("GET")
                  .AllowAnyMethod()
                  .AllowAnyHeader()
                  .AllowCredentials()                                               
              ));

在“配置”中:

   app.UseCors("NewPolicy");

在API控制器中:

 [EnableCors("NewPolicy")]
public class DataController : ControllerBase
{
  // Controller code
}

我得到的错误: 从原点“ http://localhost:3000”到“ ...”的访存已被CORS策略阻止:“ Access-Control-Allow-Origin”标头包含多个值“ http://localhost:3000”,* ',但只允许一个。让服务器发送带有有效值的标头,或者,如果不透明的响应满足您的需要,请将请求的模式设置为“ no-cors”,以在禁用CORS的情况下获取资源。

出于某种原因,我在其中加了“ *”

Access-Control-Allow-Origin: http://localhost:3000, *

不是只有'http://localhost:3000'

0 个答案:

没有答案