对Web方法的Ajax调用会导致500错误,但是当移至另一个目录时可以使用。
我创建了程序的精简版,可以从AJAX调用Web方法。 Ajax调用和web方法都包含在同一个aspx文件中。当将此aspx文件放置在某个目录中时,它将起作用。如果我将其移动到另一个目录,它将失败。如果移动了代码,没有相对链接或我能找到的任何中断。在事件查看器中,我得到错误未知的Web方法。在浏览器调试中,我收到500 Internal Server Error消息。
$.ajax({
type: "POST",
url: "TestPaypal.aspx/ReceivePaymentInfo",
contentType: "application/json; charset=utf-8",
datatype: "json",
async: false,
cache: false,
data: JSON.stringify(transactionInfo),
success: function (succ) {
if (result.hasOwnProperty("d"))
{
console.log('Success: ', result.d);
window.alert("Thank you!");
}
else
{
console.log('Success: ', result);
}
},
error: function (err) {
console.log(JSON.stringify(err));
window.alert("Error call 555-1212 for assistance.");
}
});
<script language="C#" runat="server">
[WebMethod(EnableSession = true)]
public static string ReceivePaymentInfo(string amount, string
parentPaymentId, string payerStatus, string paymentDate, string
paymentId, string saleId, string status )
{
if (status.ToLower() != "approved")
{
return "Not approved";
}
return "Approved";
}
</script>