MVC——ajax发送delete请求 报错404,405
调用mvc的删除方法,方法上面标注的请求方式为【HttpDelete】 ajax调用,type为“delete” 在本机调试,报错404 方法找不到
于是在mvc项目的web.config修改配置如下: <system.webServer> <validation validateIntegratedModeConfiguration="false" /> <modules runAllManagedModulesForAllRequests="true"> </modules> </system.webServer> 设置modules的属性runAllManagedModulesForAllRequests为true 本地再次调试发现好了 还有前端调用delete的方式,有人认为是: jquery中的标准请求,只有get和post,而put和delete其实都是post请求,只是分别加了参数_method: put和method: delete,所以在jquery中ajax delete请求时就可以使用$.post(url,{_method: "delete"},function(data){...})。这个要比直接使用$.ajax({method: :delete})好的多,有两个原因,1: 部分浏览器不支持{method: :delete}和{method: :post}2: 这个ajax请求无法处理返回的数据 具体还带查证 于是信心满满将服务部署在服务器上上,然而404确实不见了,405出现了
于是看到如下的解决方案: IIS7.5上的REST服务的Put操作发生HTTP Error 405.0 - Method Not Allowed 解决方法 <system.webServer> <modules> <remove name="WebDAVModule" /> </modules> <handlers> <remove name="WebDAV" /> </handlers> </system.webServer> 原文地址;http://www.cnblogs.com/shanyou/archive/2012/03/23/2414252.html 在IIS服务器上的服务重新启动,删除操作的方法返回200,请求成功。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |