在我的 Web 服务器上,通过将以下内容添加到我的配置文件中,我能够允许一个域的 CORS:
<system.webServer>
<httpProtocol>
<customHeaders>
.....
<add name="Access-Control-Allow-Origin" value="https://domain2.com" />
<add name="Access-Control-Allow-Headers" value="Content-Type" />
<add name="Access-Control-Allow-Methods" value="GET,POST,PUT,DELETE,OPTIONS" />
<add name="Access-Control-Allow-Credentials" value="true" />
</customHeaders>
</httpProtocol>
.....
</system.webServer>
这允许来自 https://domain2.com 的请求,但我需要允许来自其他域的请求。
在确认安装了 IIS CORS module 后,我删除了这些更改并应用了以下内容:
<system.webServer>
<cors enabled="true">
<add origin="https://mydomain2.com" allowCredentials="true" />
<add origin="https://mydomain3.com" allowCredentials="true" />
</cors>
.....
</system.webServer>
使用此配置,我收到以下错误:
<块引用>从源“https://domain2.com”获取“https://domain1.com”的访问权限已被 CORS 策略阻止:请求中不存在“Access-Control-Allow-Origin”标头资源。如果不透明响应满足您的需求,请将请求的模式设置为“no-cors”以在禁用 CORS 的情况下获取资源。
如何允许来自多个域的请求?