Jquery 不允许使用IE 11$.ajax PUT方法
在我的编辑页面上,我正在使用api控制器 这是我的$.ajax:Jquery 不允许使用IE 11$.ajax PUT方法,jquery,ajax,asp.net-mvc,put,Jquery,Ajax,Asp.net Mvc,Put,在我的编辑页面上,我正在使用api控制器 这是我的$.ajax: var settings = {}; settings.baseUri = '@Request.ApplicationPath'; var infoGetUrl = ""; if (settings.baseUri === "/ServerProjectName") { infoGetUrl = settings.baseUri + "/api/controllerName/"; } else { infoGetU
var settings = {};
settings.baseUri = '@Request.ApplicationPath';
var infoGetUrl = "";
if (settings.baseUri === "/ServerProjectName") {
infoGetUrl = settings.baseUri + "/api/controllerName/";
} else {
infoGetUrl = settings.baseUri + "api/controllerName/";
}
$("#Edit-Btn").on("click",
function(e) {
$("form").validate({
submitHandler: function() {
e.preventDefault();
$.ajax({
method: "PUT",
url: infoGetUrl,
data: $("form").serialize(),
success: function(data) {
toastr.options = {
onHidden: function() {
window.location.href = newUrl;
},
timeOut: 3000
}
toastr.success("Successfully edited.");
},
error: function (jqXHR, textStatus, errorThrown) {
var status = capitalizeFirstLetter(textStatus);
toastr.error(status + " - " + jqXHR.responseText);
}
});
}
});
});
这个方法下面是另一个用于“DELETE”的ajax函数,它工作得非常好。只有PUT方法给了我这个错误
当我提交时,我收到一个错误,上面写着:
请求的资源不支持http方法“PUT”
我已经看过了,但不太明白。我正在使用IE11,所以我认为应该支持它
非常感谢您的任何想法或帮助
您收到此消息的原因是您尝试使用的API不支持HTTP PUT方法 通常,如果您使用的是WebAPI2.0,那么web方法上会有一个属性,如果它支持PUT,则该属性具有
[HttpPut]
。还有其他方法标记API以支持Put,但通常不使用
确认API是否存在问题的最简单方法是使用Postman尝试使用API,这样可以消除javascript可能存在的任何问题。我现在正在使用Postman进行测试,它正在工作。我正在通过Postman编辑一个属性,然后刷新我的页面,该属性是我编辑它的值,以确定您选择的是put in Postman?你能用postman的截图更新这个问题吗?这是因为你的javascript没有附加你在postman中使用的6