为什么我会得到"访问控制 - 允许 - 来源'标题包含多个值' *,*,*',但只允许一个"?

时间:2016-11-18 17:55:50

标签: javascript angularjs express nginx http-headers

在本地,我的Angular 1.x网络应用程序与我在我的机器上运行的RESTful API进行通信没有问题。但是,当我将API和Web应用程序投入生产时,我收到以下错误:

  

XMLHttpRequest无法加载https://api-domain-name-removed/api/common/protected/locations?l=1000。对预检请求的响应未通过访问控制检查:“访问控制 - 允许 - 来源”'标头包含多个值' ,*',但只允许一个。起源' https://client-domain-name-removed'因此不允许访问。

我也看到这个OPTIONS请求失败:

enter image description here

但是,当我使用Postman时,我能够毫无问题地对生产API提出请求:

enter image description here

为什么请求从Web应用程序失败的任何想法?

请注意,在生产中,API运行时使用nginx反向代理Express应用程序,并且Web应用程序在Docker容器内运行。另请注意,Chrome(v55)和Firefox(v47)中也会出现同样的错误。

0 个答案:

没有答案