欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

axios接收json數(shù)據(jù)亂碼

呂致盈2年前9瀏覽0評論

最近在使用axios接口進(jìn)行數(shù)據(jù)請求的時候,發(fā)現(xiàn)接收到的json數(shù)據(jù)出現(xiàn)了亂碼的問題。經(jīng)過分析,發(fā)現(xiàn)是axios在將數(shù)據(jù)解析為json對象時,因為沒有指定編碼格式而導(dǎo)致了亂碼的問題。

axios.get('/api/data')
.then(res =>{
const result = JSON.parse(unescape(encodeURIComponent(res.data)));
console.log(result);
})

在上面的代碼中,我們使用了unescape和encodeURIComponent方法對數(shù)據(jù)進(jìn)行了編碼和解碼操作。unescape方法可以對url中的特殊字符進(jìn)行解碼,而encodeURIComponent方法可以將字符串進(jìn)行編碼,以便于在url中傳輸。

通過對數(shù)據(jù)進(jìn)行編碼和解碼,我們可以保證數(shù)據(jù)在傳輸過程中不會出現(xiàn)亂碼的情況。同時,我們也可以在服務(wù)器端對響應(yīng)頭進(jìn)行設(shè)置,指定編碼格式為UTF-8。

axios.get('/api/data', {
headers: {
'Content-Type': 'application/json;charset=utf-8'
}
})
.then(res =>console.log(res.data))
.catch(err =>console.log(err));

在以上代碼中,我們通過設(shè)置headers的方式指定了請求頭的Content-Type為application/json;charset=utf-8。這樣,當(dāng)接收到數(shù)據(jù)時,axios就會自動對數(shù)據(jù)進(jìn)行解析,從而避免了出現(xiàn)亂碼的情況。

總之,針對axios接收json數(shù)據(jù)亂碼的問題,我們需要使用unescape和encodeURIComponent方法對數(shù)據(jù)進(jìn)行編碼解碼,或者在服務(wù)器端對響應(yīng)頭進(jìn)行設(shè)置,指定編碼格式為UTF-8。