我在aspx页面中有一个webmethod,我通过jquery Ajax方法调用它。
在一台服务器上,我在ajax调用上获得了Windows安全提示(所有其他服务器工作正常)。 当我使用fiddler检查时,我看到我的方法调用的301重定向(webmethods.aspx / GetDetails to webmethods.aspx / GetDetails /)
不确定为什么重定向发生在一台服务器上并且调用webmethod.aspx / GetDetails /正在抛出401。 我检查了所有通配符映射等,但无法找到任何问题。知道我需要检查的其他地方吗?
这是我的代码
$.ajax({
type: "POST",
url: "/webmethods.aspx/GetDetails",
data: "",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (response) {
//alert('success');
},
failure: function (response) {
alert(response);
},
error: function (jqXHR, textStatus, errorThrown) {
var errMessage = "An error occured serving your request. Please try again.";
if (jqXHR)
errMessage = $.parseJSON(jqXHR.responseText).Message;
alert(errMessage);
}
答案 0 :(得分:1)
您可以检查web.config中的处理程序顺序吗?我有类似的问题,其中静态文件处理程序是在aspx处理程序之前。更改顺序修复了我的问题(将静态文件移动为最后一个元素,因为大多数时候它会在处理之前验证文件是否存在)。