【问题标题】:Azure - Website calling API - The 'Access-Control-Allow-Origin' header contains multiple values '*, *', but only one is allowedAzure - 网站调用 API - “Access-Control-Allow-Origin”标头包含多个值“*、*”,但只允许一个
【发布时间】:2017-04-21 15:06:42
【问题描述】:

我在 Azure 中有一个网站正在调用 API(也在 Azure 中)。

当我发布网站和 API 并尝试了几次后,我可以 GET 数据,但不能 POST 或 DELETE。它说的是没有设置“Access-Control-Allow-Origin”标头。

所以我开始摆弄 CORS(我已经在控制器中了

[EnableCors(origins: "*", headers: "*", methods: "GET")]

,以及在 WebApiConfig

var cors = new EnableCorsAttribute("*", "*", "*"); config.EnableCors(cors);

根据这个文档,当我在本地运行服务时它曾经工作过 https://docs.microsoft.com/en-us/aspnet/web-api/overview/security/enabling-cross-origin-requests-in-web-api)

现在,在没有任何效果并且我恢复到原始状态(当 GET 工作时)之后,我在 Chrome 的控制台中不断收到此错误:

“Access-Control-Allow-Origin”标头包含多个值“*、*”,但只允许一个。

这在 Firefox 中:

原因:CORS 标头“Access-Control-Allow-Origin”与“(null)”不匹配

我无权访问 .htaccess 。我检查了我提到的服务中是否有其他与 CORS 相关的代码,据我所知,这只是上面描述的内容。我也尝试评论上面的代码,错误仍然保持不变。

【问题讨论】:

  • 在 EnableCorsAttribute 中只尝试一个“*”?
  • 你有什么更新吗?
  • @TomSun-MSFT 我在 App_Start/WebApiConfig.cs 中只留下了config.EnableCors();,并在控制器中使用了[EnableCors(origins: "*", headers: "*", methods: "*")](一切顺利后,我将“起源”从“*”更改为使用 API 的网站的地址)。这是我发现有用的另一个指南:c-sharpcorner.com/article/…
  • 我很高兴你已经解决了。您是否尝试从 azure 门户设置它?根据我的经验,它也会起作用。
  • 如果你添加你的解决方案来回答这将有助于更多的社区。​​span>

标签: asp.net azure cors azure-web-app-service azure-api-apps


【解决方案1】:

您是否尝试在 Azure 门户上进行配置?如果没有,请尝试在您的 Azure WebAPI 站点上进行配置。更多细节请参考截图。 我们也可以从Azureofficial document获取相关信息。

【讨论】:

  • 谢谢,没有意识到这是应用程序中的覆盖设置。在门户中未启用此功能但配置在应用程序中有效时的奇怪行为。
【解决方案2】:

我遇到了完全相同的错误,但在我的情况下,解决方案是从 web.config 中删除这些行来修复它。

<httpProtocol>
 <customHeaders>
   <add name="Access-Control-Allow-Origin" value="*" />
 </customHeaders>
</httpProtocol>

【讨论】:

    【解决方案3】:

    我在 App_Start/WebApiConfig.cs 中留下了 config.EnableCors();

    并在控制器中使用[EnableCors(origins: "*", headers: "*", methods: "*")]

    注意:一切顺利后,我将“origins”从“*”更改为使用该 API 的网站地址。

    这是我发现有用的另一个指南:http://www.c-sharpcorner.com/article/fix-to-no-access-control-allow-origin-header-is-present-or-w/

    【讨论】:

      猜你喜欢
      • 2015-06-13
      • 2021-06-21
      • 2015-03-02
      • 2019-10-02
      • 2019-11-05
      • 2018-10-28
      • 2016-10-02
      • 2020-02-04
      相关资源
      最近更新 更多