新闻动态
新闻动态
NEWS INFORMATION

解决IIS不识别PUT和DELETE请求

发布日期:2022-07-20 19:26 | 文章来源:CSDN

restful API对资源的相应操作应该被体现成http动词,增删改查对应动词应为post、delete、put、get。

按照思路写出一个demo以后,运行,结果是这样的:

好吧,被拦截了,怎么设置呢?网友们的回答五花八门——

有删除webdav模块的:

<system.webServer> 
     <modules> 
         <remove name="WebDAVModule" /> 
     </modules> 
     <handlers> 
         <remove name="WebDAV" /> 
     </handlers> 
 </system.webServer>

有说是因为权限不足造成的,有说是因为页面form太多造成的,有说是因为…………

以上一众网友不论对错,对此处问题都是无效的。

其实关键信息就隐藏在大家都能看得到的地方:

这个链接看过以后,相信大家心里都有谱了:修改配置。

配置文件在这里:C:\Windows\System32\inetsrv\config\applicationhost.config

需要注意的是该文件无法直接打开,先转跳至目录内在进行操作即可。

在这个文件内找到handlers标记,该标记下有所有模块的配置,修改对应模块允许的谓词即可,如:

<add name="SimpleHandlerFactory-ISAPI-4.0_64bit" path="*.ashx" verb="GET,HEAD,POST,DEBUG,PUT,DELETE" modules="IsapiModule" scriptProcessor="C:\Windows
 
\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0" />

我这里将PUT和DELETE加了进去,运行:

可以看到,delete已经被支持,put也一样,同理,如果还有什么谓词想加进来,直接在对应模块的配置内添加即可。

如果还是不可以,请手动删除IIS中的WebDav模块,如下图:

到此这篇关于解决IIS不识别PUT和DELETE请求的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持本站。

香港快速服务器

版权声明:本站文章来源标注为YINGSOO的内容版权均为本站所有,欢迎引用、转载,请保持原文完整并注明来源及原文链接。禁止复制或仿造本网站,禁止在非www.yingsoo.com所属的服务器上建立镜像,否则将依法追究法律责任。本站部分内容来源于网友推荐、互联网收集整理而来,仅供学习参考,不代表本站立场,如有内容涉嫌侵权,请联系alex-e#qq.com处理。

实时开通

自选配置、实时开通

免备案

全球线路精选!

全天候客户服务

7x24全年不间断在线

专属顾问服务

1对1客户咨询顾问

在线
客服

在线客服:7*24小时在线

客服
热线

400-630-3752
7*24小时客服服务热线

关注
微信

关注官方微信
顶部