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/
学习技术最好的文档就是【官方文档】,没有之一。
还有学习资料【Microsoft Learn】、【CSharp Learn】、【My Note】。
如果,你认为阅读这篇博客让你有些收获,不妨点击一下右下角的【推荐】按钮。
如果,你希望更容易地发现我的新博客,不妨点击一下【关注】。