1.通过ajax提交表单,如果验证不通过,则会返回http状态值为422的json
2.该json的格式如何自定义?
3.http状态值422,貌似已经在框架里面写死了。我想通过捕获验证异常的形式返回自定义的json到前端,这个能实现吗?
4.利用jquery的ajax方法在error的时候还是拿不到格式化成json对象的的返回数据,只能拿到一个字符串形式的json
1.通过ajax提交表单,如果验证不通过,则会返回http状态值为422的json
2.该json的格式如何自定义?
3.http状态值422,貌似已经在框架里面写死了。我想通过捕获验证异常的形式返回自定义的json到前端,这个能实现吗?
4.利用jquery的ajax方法在error的时候还是拿不到格式化成json对象的的返回数据,只能拿到一个字符串形式的json
这是我用AJAX处理的返回数据 包括验证失败提示
$.ajax({
url : url,
type : type,
data : params,
dataType : ret_type,
timeout : 30000,
async : false, // false:同步请求,true:异步请求
beforeSend : function () {
console.log('正在请求...');
},
success : function (re_data, textStatus) {
console.log('数据已返回');
responseObject = re_data;
},
error : function (XMLHttpRequest, textStatus, errorThrow ) {
console.log('AJAX 执行失败...');
console.log(XMLHttpRequest);
console.log(textStatus);
console.log(errorThrow);
responseObject = {status:false,message:'请求失败'};
},
// 请求完成后回调函数 (请求成功或失败之后均调用)
complete : function (XMLHttpRequest, textStatus) {
layer.close(ajax_lod);
var ret_code = XMLHttpRequest.status;
var ret_json = XMLHttpRequest.responseJSON;
var message = {};
for( var i in ret_json){
message[i] = ret_json[i][0];
}
if( ret_code == 422 ){
for( var p in params){
if(message[p]){
responseObject = {status:false,message:message[p]};break;
}
}
}else if(textStatus == 'error') {
responseObject = {status:false,message:'请求失败'};
}
console.log(message);
}
});
1 回答4k 阅读✓ 已解决
3 回答1.8k 阅读✓ 已解决
2 回答2.2k 阅读✓ 已解决
1 回答3.7k 阅读
1 回答1.4k 阅读✓ 已解决
2 回答2.2k 阅读
1 回答569 阅读✓ 已解决
json格式这个自己根据需要定义,没有什么多说的,后面两个问题
http状态值422,貌似已经在框架里面写死了。我想通过捕获验证异常的形式返回自定义的json到前端,这个能实现吗?
利用jquery的ajax方法在error的时候还是拿不到格式化成json对象的的返回数据,只能拿到一个字符串形式的json