我想在 ajax 请求出错时返回特定消息。
[WebMethod]
public static AjaxReturnObject SubmitWager(string token, string track, string race, string amount, string pool, string runners)
{
try
{
var serviceReturn = Services.Account.SubmitWager("", track, race, pool, amount, runners);
return new AjaxReturnObject(serviceReturn.AccountToken, serviceReturn.Payload);
}
catch (CustomServiceException<string> e)
{
throw new Exception(e.Message);
}
}
调试说它在我需要的时候命中了我的捕获,但是当我查看我的 jquery ajax 调用中的 xhr 时,它总是说“处理请求时出错。”
error: function (xhr, textStatus, errorThrown) {
log(xhr, textStatus, errorThrown);
}
我怎样才能让我想要的消息返回到 xhr.responseText 下的 ajax 调用?
请您参考如下方法:
尝试在 catch block 中使用 Throw 而不是 Throw new。一旦你解析了 XHR.responseText,异常消息将包含在“消息”中 例如:
$.ajax({
type: "POST",
//... other parameters
error: function(XHR, errStatus, errorThrown) {
var err = JSON.parse(XHR.responseText);
errorMessage = err.Message;
}
});
