//该demo主要用于uniapp中,uni.request请求数据中出现NULL值而导致无法获取请求结果的解决方式
//该函数核心在于dataType属性的转换
//对于部分请求数据中含有NULL值,无法获取请求数据的情况优先转换为非josn格式,这里用text
getUserinfo() {
const _this = this
uni.request({
url: "url",
header: {'Content-Type': 'application/x-www-form-urlencoded'},
method: "GET",
dataType: 'text',
success(res) {
try {
var jsonData = JSON.parse(res.data);
var replacedData = _this.replaceNullWithEmptyString(jsonData);
console.log(replacedData); // 替换后的数据
// 访问数据示例
console.log(replacedData.data.XXXX)
} catch (error) {
console.error('解析数据出错:', error);
}
},
fail: function(err) {
console.log(err);
}
})
},
/*该函数用于替换手动解析后的数据中的NULL为" "空字符串*/
replaceNullWithEmptyString(data) {
const _this = this
if (typeof data === 'object' && data !== null) {
if (Array.isArray(data)) {
return data.map(item => _this.replaceNullWithEmptyString(item));
} else {
var newData = {};
for (var key in data) {
if (data.hasOwnProperty(key)) {
newData[key] = _this.replaceNullWithEmptyString(data[key]);
}
}
return newData;
}
} else {
return data === null ? '' : data;
}
}
ZcyKK
- 发布:2023-07-07 09:04
- 更新:2023-07-07 09:04
- 阅读:364
0 个评论
要回复文章请先登录或注册