我有一个通过 AJAX 使用 POST 方法调用的操作方法。方法如下所示:
[HttpPost]
public ActionResult Save(MyModel model)
{
/// do something and save
return new HttpStatusCodeResult(HttpStatusCode.OK);
}
发生的情况是,在 $.ajax 调用此方法后,由于未知原因,后续 GET 请求被发送到相同的控制器和相同的操作。这个调用不是在任何地方进行的,它可能在浏览器或 ASP.NET MVC 中实现为 Post/Redirect/Get 模式,在这种情况下我不需要。
有没有办法以编程方式禁用此功能,因为未实现 Save 方法的 GET 对应项,服务器返回 404,其中包含 HTML 内容。
编辑,这是客户端 AJAX 脚本:
function saveDonkey(donkey) {
var jsonData = JSON.stringify(donkey);
$.ajax({
url: "/Donkey/Save",
data: jsonData,
contentType: "application/json",
dataType: "json",
type: "POST",
success: function () {
fetchPage(); /// This just issues GET request to another predefined method
}
});
}