跨域,请求按要求配置完毕以后,options预请求总是报错。缘由是webapi 默认的web.config有配置web
<handlers>
<remove name="ExtensionlessUrlHandler-Integrated-4.0" />
<remove name="OPTIONSVerbHandler" />
<remove name="TRACEVerbHandler" />
<add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="*" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />
</handlers>api
有这么个配置,致使不行。要把他删掉,还要加上跨域
<httpProtocol>
<customHeaders>
<add name="Access-Control-Allow-Origin" value="*" />
<add name="Access-Control-Allow-Methods" value="POST,GET" />
<add name="Access-Control-Allow-Headers" value="x-requested-with,content-type,authorization,mypara,username" />
</customHeaders>
</httpProtocol>less
这个问题整了我很久。遇到问题关键仍是要有思路。对于数据的经常使用的有二分法,对于配置问题,能够用对比法。调试
这个问题我一开始就是拼命的百度,google,发现都解决不了问题。其实看的差很少就好了,不少时候是别的问题形成的。blog
而后就新建一个项目,调试,居然发现成功了,后来一对比 就是web.config配置的问题。rem
如今仔细想一想关键的仍是处理问题思路。it