• 【问题解决】'AccessControlAllowOrigin' header contains multiple values '*, *', but only one is allowed.


    问题复述

    今天项目组有人找我说之前部署的程序在测试环境没问题,到生产环境出现了奇怪的问题,点按钮没反应。

    我通过腾讯会议发现他们的浏览器控制台上打出了如下错误:

    Access to XMLHttpRequest at 'https://aaa.bbb.ccc' from origin 'https://ddd.bbb.ccc' has been blocked by CORS policy: The 'Access-Control-Allow-Origin' header contains multiple values '*, *', but only one is allowed.
    

    很奇怪,CORS 相关的一般是跨域问题啊,怎么会这样呢?我注意到一点异常如下图,竟然设置了2次重复的跨域响应头!

    问题解决

    在根据错误查到原因就是 Access-Control-Allow-Origin 响应头重复设置导致跨域设置失败,去掉其中一个就可以了。

    找到那个项目的主程,问他是不是在代码中添加了解决跨域的响应头,回复是肯定的。他的代码如下:

    现在正在上线,改代码肯定不现实了,改下Nginx的配置吧,如下注释掉两行配置并reload,问题得以解决。

    本次就分享这些,我是Hellxz,我们下次再见。

  • 相关阅读:
    加载与隐藏显示
    Task 自我总结认知
    修复SDF数据库引擎C#代码
    Windows防火墙开启后 ping不通了 的解决方案
    C# 串口
    WPF DataGrid中单元格运用Combobox的示例
    组合模式
    适配器模式
    【转载】.net 动态代理
    python数组操作
  • 原文地址:https://www.cnblogs.com/hellxz/p/16208188.html
Copyright © 2020-2023  润新知