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

axios 返回json亂碼

最近我在使用axios發(fā)送請(qǐng)求后,返回的JSON數(shù)據(jù)總是出現(xiàn)亂碼的情況。我對(duì)此進(jìn)行了一些研究,并找到了一些解決方法。

首先,要明確的是,axios默認(rèn)會(huì)將返回的內(nèi)容以字符串形式返回。如果服務(wù)器返回的是JSON數(shù)據(jù),那么axios也會(huì)將其當(dāng)做字符串解析,導(dǎo)致出現(xiàn)亂碼。

解決這個(gè)問(wèn)題的方法就是在axios的配置中設(shè)置responseType為json。這樣,axios會(huì)自動(dòng)將返回的JSON數(shù)據(jù)解析為一個(gè)JavaScript對(duì)象。

axios.get('/api/data', {
responseType: 'json'
}).then(response =>{
console.log(response.data); // 返回的是一個(gè)JavaScript對(duì)象,而不是字符串
}).catch(error =>{
console.log(error);
});

還有一種情況,就是在axios發(fā)送請(qǐng)求時(shí),請(qǐng)求頭中沒(méi)有正確指定編碼方式導(dǎo)致的亂碼。一般來(lái)說(shuō),服務(wù)器返回的數(shù)據(jù)類型都包含一個(gè)Content-Type的響應(yīng)頭,指定了數(shù)據(jù)類型和編碼方式。如果axios發(fā)送請(qǐng)求時(shí)沒(méi)有指定編碼方式,那么就可能出現(xiàn)亂碼。

解決這個(gè)問(wèn)題很簡(jiǎn)單,只需要在axios的請(qǐng)求頭中指定編碼方式即可。

axios.get('/api/data', {
headers: {
'Content-Type': 'application/json;charset=utf-8'
}
}).then(response =>{
console.log(response.data); // 返回的是一個(gè)JavaScript對(duì)象,而不是字符串
}).catch(error =>{
console.log(error);
});

總之,axios返回JSON亂碼是一個(gè)常見(jiàn)問(wèn)題,但也是很容易解決的。只需要在axios的配置中設(shè)置responseType或者指定正確的編碼方式即可。