gpt4 book ai didi

asp.net-mvc - ASP.NET MVC : Signaling to jQuery that an AJAX request has failed with a custom error message

转载 作者:行者123 更新时间:2023-12-03 23:05:03 24 4
gpt4 key购买 nike

Controller :产品和操作:保存,返回 JsonResult。如果发生捕获的异常,我想用自定义错误消息向客户端(即:jQuery)发出该错误信号。我怎样才能在服务器和客户端上做到这一点?在这种情况下我可以利用函数指针错误吗?

这是客户端代码

$.ajax({
url: '/Products/Save',
type: 'POST',
dataType: 'json',
data: ProductJson,
contentType: 'application/json; charset=utf-8',
error: function ()
{
//Display some custom error message that was generated from the server
},
success: function (data) {
// Product was saved! Yay

}
});

最佳答案

error当请求失败时(意味着您的 Controller 操作未成功完成;例如,当用户发出请求时 IIS 已关闭),您引用的函数将被调用。请参阅http://api.jquery.com/jQuery.ajax/ .

如果您的 Controller 操作已成功联系,并且您想让客户端知道您的 Controller 操作内发生了错误的事情,您应该返回 JsonResult包含 ErrorErrorCode您的客户端 JS 能够理解的属性。

例如,您的 Controller 操作可能如下所示:

public ActionResult Save()
{
ActionResult result;
try
{
// An error occurs
}
catch(Exception)
{
result = new JsonResult()
{
// Probably include a more detailed error message.
Data = new { Error = true, ErrorMessage = "Product could not be saved." }
};
}
return result;
}

您将编写以下 JavaScript 来解析该错误:

$.ajax({
url: '/Products/Save',
'POST',
'json',
ProductJson,
'application/json; charset=utf-8',
error: function ()
{
//Display some custom error message that was generated from the server
},
success: function (data) {
if (data.Error) {
window.alert(data.ErrorMessage);
}
else {
// Product was saved! Yay
}
}
});

希望有帮助。

关于asp.net-mvc - ASP.NET MVC : Signaling to jQuery that an AJAX request has failed with a custom error message,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4212202/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com