我从ajax成功方法获得了结果,在该方法上,我已重定向到另一个页面,但它总是阻止我不允许显示以下错误。
page 405 method not allowed
如何解决此问题,欢迎我需要重定向到所需页面的任何建议。
这是我尝试过的:
function callinsert(db, tbl, pk, jobj) {
$.ajax({
beforeSend: function(xhr) {
xhr.setRequestHeader("Authorization", "Bearer " + at);
},
url: "MYURL/Insert?database=" + db + "&tablename=" + tbl + "&pk=" + pk,
contentType: 'application/json',
data: jobj,
dataType: "json",
async: false,
type: "POST",
success: OnSuccessInsertEmployee,
/*Create a Function to run the Success Action */
error: errorAction
});
}
function OnSuccessInsertEmployee(data) {
//Here I need to redirect to another page
location.href = "xxxx.html";
}
答案 0 :(得分:1)
我认为您正在为表单使用两个不同的ID名称。提交后,将无法获得重定向的方法。
在脚本中提交Form时使用event.preventDefault()jQuery函数。
答案 1 :(得分:0)
错误HTTP 405 method not allowed
表示该方法在服务器上可用,但不适用于给定类型的请求。
确保页面可访问,并且资源/文件上允许使用HTTPGet
或GET
。对于您而言,请确保可以访问xxxx.html或重定向的链接。
我假设您的Post方法成功返回了Data(请验证)。当调用 POST 请求并且WebAPI在所调用的Web方法上缺少[HttpPost()]
属性时,我已经多次遇到此问题。
更新
您的IIS /服务器是否允许html文件?默认情况下,它允许但某些人为了安全或性能而删除默认处理程序
检查处理程序映射:
确保StaticFile
的{{1}}条目存在并且已启用并允许进行GET&Read。