开发环境 Vs2015,
开发内容 webApi ,
遇到的问题:前端调用失败,提示如下内容。
api.test.html:1 XMLHttpRequest cannot load url The 'Access-Control-Allow-Origin' header contains multiple values '*, *', but only one is allowed. Origin 'null' is therefore not allowed access.
————————————————————————————————————————————
1.这个问题足足折磨了两天,感觉度娘都快被找遍了,一直以为是跨域的问题,其实也是跨域的问题,但是注意这句话
The 'Access-Control-Allow-Origin' header contains multiple values '*, *', but only one is allowed.
2.在vs2015中,为了解决跨域,我们是在nuget内添加第三方cors的,然后如果先不考虑安全的情况下,我们在WebApiConfig.cs内添加跨域的相关配置。
3.问题出在这里,2里面的相关配置都设置好之后,在webconfig中,有的资料里面是让在webserver下加入httpProtocol节点和handlers节点的。这样问题就出现了,设置了两次跨域。
--------------------------------------------------------------------------------------------------------------------------------------------
解决办法:删掉webconfig内的这两个节点,只保留WebApiConfig.cs 内的一处就可以了。
个人拙见,没有来得及深入研究其原理,有不对的地方,希望指正。