解决ajax请求返回Json无法解析"\"字符的问题

时间:2024-01-03 11:40:38

原因:获取身份证信息,涉及图片路径,存在“\”字符,导致Json解析错误

解决ajax请求返回Json无法解析"\"字符的问题

解决思路:将返回类型从"json"改成"text",此时返回的数据类型变成字符串,将字符串的"\"替换成"/",此时不存在Json格式错误的问题,

再调用Json.parse解析成Json格式

$.ajax({
type : "GET", //提交方式
url : "http://127.0.0.1:24010/ZKIDROnline/info",//路径
data : { },//数据,这里使用的是Json格式进行传输
dataType:'json',
success : function(data) {
if (data.ret === 0) {
$.ajax({
type : "GET", //提交方式
dataType:'text',
url : "http://127.0.0.1:24010/ZKIDROnline/ScanReadIdCardInfo?",//路径
data : {'OP-DEV':1,'CMD-URL':4,'common':1,'random':150 },//数据,这里使用的是Json格式进行传输
success : function(data) {//返回数据根据结果进行相应的处理
data = data.replace(/\\/g,"/");
var result = null;
result = JSON.parse(data);
if(result.ret == 0) {
console.log("得到身份证数据");
}else{
console.log("提示","身份证数据获取失败")
}
}
});
console.log("得到设备数据");
} else {
console.log("未得到设备数据");
}
}
});