相关疑难解决方法(0)

你如何处理来自AJAX调用的错误?

假设我有以下jQuery AJAX调用:

$.ajax({
   type: "POST",
   url: "MyUrl",
   data: "val1=test",
   success: function(result){
        // Do stuff
   }
 });
Run Code Online (Sandbox Code Playgroud)

现在,当进行这个AJAX调用时,我希望服务器端代码运行一些错误处理检查(例如,用户是否仍然登录,他们是否有权使用此调用,数据是否有效等).如果检测到错误,如何将该错误消息重新发送回客户端?

我最初的想法是返回一个带有两个字段的JSON对象:error和errorMessage.然后将在jQuery AJAX调用中检查这些字段:

$.ajax({
   type: "POST",
   url: "MyUrl",
   data: "val1=test",
   success: function(result){
       if (result.error == "true") 
       {
           alert("An error occurred: " & result.errorMessage);
       }
       else 
       {
           // Do stuff
       }
   }
 });
Run Code Online (Sandbox Code Playgroud)

这对我来说有点笨拙,但它确实有效.还有更好的选择吗?

validation ajax jquery

24
推荐指数
2
解决办法
5万
查看次数

当存在用户/表单验证错误时,我应该向AJAX请求发送什么响应/状态代码?

我正在创建我的Web应用程序的一个功能,用户可以"编辑就地"记录并使用jQuery通过AJAX提交表单.

当某人"ajax编辑"一条记录并且他们提交有效数据的表单时,我发送一个200状态代码,触发jQuery AJAX Success函数,然后忽略响应体(因为它成功了,我不需要它) ),并折叠表格.

当存在表单验证错误时,我发送400状态代码以触发jQuery错误方法,并在请求正文中指定哪些字段未验证.

在之前的StackOverflow问题中,有人提到我发送400状态代码并使用响应正文"似乎很奇怪".我的方法不是最佳做法吗?在这种情况下,你会建议我做什么?

ajax jquery http

6
推荐指数
2
解决办法
6673
查看次数

标签 统计

ajax ×2

jquery ×2

http ×1

validation ×1