C# Jquery Ajax调用ASMX web服务错误
我有一个ASP.NETWebForms应用程序,它有一个ASMXWeb服务文件,目前只有一个方法。我试图从同一项目中的另一个文件调用该方法,但它似乎不起作用。当我在chrome中查看控制台窗口时,它指出web服务存在内部错误。使用ASMX接口,我可以手动调用该方法,但它不能从AJAX代码中调用。我无法确定错误的来源 ASMX网络方法C# Jquery Ajax调用ASMX web服务错误,c#,jquery,asp.net,ajax,C#,Jquery,Asp.net,Ajax,我有一个ASP.NETWebForms应用程序,它有一个ASMXWeb服务文件,目前只有一个方法。我试图从同一项目中的另一个文件调用该方法,但它似乎不起作用。当我在chrome中查看控制台窗口时,它指出web服务存在内部错误。使用ASMX接口,我可以手动调用该方法,但它不能从AJAX代码中调用。我无法确定错误的来源 ASMX网络方法 [WebMethod] public string TestMethod() { string x = "{Name:Sho
[WebMethod]
public string TestMethod()
{
string x = "{Name:Shooter McGavin}";
return x;
}
来自ASP.NET页面的JQuery。我知道click事件正在触发,并且我还确认,如果表单有效,则代码在IF语句中进行
$("#AddSupplierBtn").click(function()
{
if ($("#AddSupplier").valid())
{
$.ajax({
type: "POST",
url: "/StockPileDelivery.asmx/TestMethod",
data: "{}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (msg) {
alert(msg.data);
}
});
}
});
通常,如果您查看“网络”选项卡,或者甚至单击控制台中的错误,它会给出实际错误。它返回的全部是500(内部服务器错误)。您使用的是Chrome吗?如果您打开开发人员控制台(F12)并转到网络,对外部资源的任何请求都将被记录,包括web方法。从那里,如果有错误,它将显示为红色文本。单击它将显示请求和响应。响应应该包含实际的异常,而不是一般的异常。另外,你的JS所在页面的ASMX文件在哪里?我使用Chrome。我在网络中没有看到任何调用web方法的内容,但如果我在控制台选项卡中展开错误,它会声明:send@jquery-1.9.1.min.js:5 ajax@jquery-1.9.1.min.js:5(匿名)@AddSupplier.aspx:228 dispatch@jquery-1.9.1.min.js:3 v.handle@jquery-1.9.1.min.js:3“{Name:Shooter McGavin}”是无效的JSON。可能不是导致错误的原因,但仍有一些问题需要解决。