WebAPI Delete方法报错405 Method Not Allowed


.net framework

在Web.config文件中添加如下配置:

<system.webServer>
    <modules runAllManagedModulesForAllRequests="true"> <remove name="WebDAVModule"/> </modules> ...... </system.webServer>

参考资料

https://stackoverflow.com/questions/15619075/webapi-delete-not-working-405-method-not-allowed

.net core

<system.webServer>
    <modules runAllManagedModulesForAllRequests="false"> <remove name="WebDAVModule"/> </modules> ...... </system.webServer>

被这个false和true坑苦了,在这里祭奠一下
大概情状是,.net core的项目,如果runAllManagedModulesForAllRequests="true",在不同的电脑上会出现几种不同的情况:
1.运行正常,delete方法成功执行
2.运行不正常,VS报错,em.....内容忘掉了
3.运行不正常,VS不报错,但是生成被中断,输出不报错,输出显示

程序“[3780] dotnet.exe”已退出,返回值为 0 (0x0)。
程序“[3780] dotnet.exe: 程序跟踪”已退出,返回值为 0 (0x0)。
程序“[13356] chrome.exe: WebKit”已退出,返回值为 -1 (0xffffffff)。

一脸懵逼地把.net core,IIS,VS,项目的环境检查了一遍,哈哈哈哈哈哈哈哈 = . =

参考资料

http://hovercraft.ie/asp-net-core-web-api-put-delete-methods-not-allowed-405-error/


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM