Google Chrome:当凭据标志为true时,不能在'Access-Control-Allow-Origin'标头中使用通配符'*'

Dur*_*sad 2 javascript google-chrome xmlhttprequest accesscontrolexception angularjs

我知道这是常见的事情,使用早期版本的chrome我用来设置"C:\ Program Files(x86)\ Google\Chrome\Application\chrome.exe"--args --disable-web-security --user Chrome快捷方式选项卡中的-data-dir,以避免"Access-Control-Allow-Origin"错误.使用最新版本,似乎此修复程序不再起作用.安装最新版本53.0.2785.89 m后,这是控制台中的错误

XMLHttpRequest无法加载https://example.org:15003/apps/services/preview/rr/common/1.0/default/index.html.对预检请求的响应未通过访问控制检查:当凭证标志为真时,不能在"Access-Control-Allow-Origin"标头中使用通配符"*".因此不允许原点' http:// ibm-pb7en65:10080 '访问.XMLHttpRequest的凭证模式由withCredentials属性控制.

我不确定要添加哪些附加属性以避免"Access-Control-Allow-Origin"错误.这有什么办法可以实现吗?

T.J*_*der 6

该错误告诉您服务器发回了此响应标头:

Access-Control-Allow-Origin: *

...在凭证请求上.这不起作用.在具有凭据的请求中,服务器必须返回特定 Access-Control-Allow-Origin标头.

由于您发出请求http://ibm-pb7en65:10080/,您的服务器必须发送回此标头:

Access-Control-Allow-Origin: http://ibm-pb7en65:10080

它不能使用通配符*.

解决方案是:

  • 更新服务器以执行此操作,或
  • 从请求中删除凭据

细节一如既往地在规范中.