原文地址:jQuery $.Ajax 的beforeSend、complete、success、error的执行顺序和参数_z.monster的博客-CSDN博客
$.ajax({
type: "POST",
url: "/login",
data: {username:$("#username").val(), password:$("#password").val()},
dataType: "json",
beforeSend: function(xhr){
//1.发送请求之前执行,最先执行,添加loading一般在这里。
layer.load(1, {
shade: [0.1,'#fff'] //0.1透明度的白色背景
});
},
complete:function(xhr,status){
//2.请求完成之后执行,最后执行,关闭loading一般在这里
layer.closeAll('loading');
},
success: function(data,status,xhr){
//3.请求成功执行,中间执行,处理后台返回的数据
console.log(data);
},
error:function(xhr,status,error){
//4.请求成功执行,中间执行,给出请求失败的提示
console.log(status);
}
});
参数:都是可选参数,有些我们平时很少用都没有写进去。
xhr:XMLHttpRequest 对象,其中包含很多属性和方法,用的比较少,如果感兴趣可以去这里了解一下 AJAX XMLHttpRequest对象。
status:请求的状态("success", "notmodified", "error", "timeout" 或 "parsererror")。
data:后台返回的数据。
error:错误信息。
顺序:他们执行的顺序是,首先执行beforeSend,然后执行success或error,最后执行complete。
注:beforeSend和complete无论成功失败都会执行,success或error是二选一执行。
参考:
error:function (XMLHttpRequest, textStatus, errorThrown)
参数解释:XMLHttpRequest 对象、错误信息、(可选)捕获的错误对象。
如果发生了错误,错误信息(第二个参数)除了得到null之外,还可能是"timeout", "error", "notmodified" 和 "parsererror"。
textStatus: "timeout", "error", "notmodified" 和 "parsererror"。
参考:
jQuery.ajax中success 和complete 区别以及ajax参数解释 - 遗失的美好灬 - 博客园
ResultUtil
java 返回结果集ResultUtil封装
java 返回结果集ResultUtil封装_先木艮的博客-CSDN博客_java result 封装
@ApiModelProperty(value = "返回状态")
private Integer status;
@ApiModelProperty(value = "返回状态码")
private Integer code;
@ApiModelProperty(value = "返回描述")
private String msg;
@ApiModelProperty(value = "返回数据")
private T data;
js打印 console.log
console.log(data);
console.log(status);
console.log(xhr);
console.log(xhr);
console.log(status);
console.log(error);