首页 > 解决方案 > 在 Azure 虚拟机外部的浏览器上访问 Web 应用程序的 CORS 问题

问题描述

大家好,我在 Azure 虚拟机的 IIS 上部署了一个 Angular 和 Asp.net Core 应用程序。它在 AZURE 虚拟机上的 IIS 本地主机上完美运行,但是当尝试使用 IP 地址和端口号访问虚拟机外部的应用程序时,出现 来自源“http://10.95.102.55:95”的CORS 问题已被 CORS 策略阻止:对预检请求的响应未通过访问控制检查:响应中“Access-Control-Allow-Credentials”标头的值为“”,当请求的凭据模式时必须为“真”是“包括”。XMLHttpRequest 发起的请求的凭证模式由 withCredentials 属性控制。

请问可能是什么问题,因为它在虚拟机上工作但在虚拟机之外是问题,禁用窗口防火墙并在端口上设置入站和出站规则。请帮忙

标签: angularazureazure-devopsazure-virtual-machineaspnetboilerplate

解决方案


在 iis 中部署的应用程序中应用以下更改。

<system.webServer>
<httpProtocol>
    <customHeaders>
        <add name="Access-Control-Allow-Origin" value="*" />
        <add name="Access-Control-Allow-Methods" value="GET,POST,OPTIONS" />
        <add name="Access-Control-Allow-Headers" value="Content-Type, soapaction" />
    </customHeaders>
</httpProtocol>
</system.webServer>

推荐阅读