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模块,如下图: 
下载地址: 解决国内k8s的ingress-nginx镜像无法正常pull拉取问题 Kubernetes(K8S)入门基础内容介绍 |