webapi 发布接口报405错误(angularjs2.0)
Posted 大稳·杨
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了webapi 发布接口报405错误(angularjs2.0)相关的知识,希望对你有一定的参考价值。
参考链接:http://www.cnblogs.com/shenbin/p/5680976.html
web访问接口报405错误,以前的jQuery访问方式访问接口没有问题。
但是换成angularjs2.0之后调用接口就报405错误,ajax调用没有问题。
查找资料之后找到解决方案:
原因是webapi 默认的web.config有配置
<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>
有这么个配置,导致不行。要把他删掉,还要加上
<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>
以上是关于webapi 发布接口报405错误(angularjs2.0)的主要内容,如果未能解决你的问题,请参考以下文章
WebApi 2.2 + Chrome = CORS 405 错误
使用 ajax 调用 webapi get 方法时出现 405 错误
Cors 中启用的所有标头,WebConfig 和 WebApiConfig 之间没有冲突,为啥我的 WebApi 返回 405 错误?