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

axios請求本地json執行catch

榮姿康2年前7瀏覽0評論

在前端開發中,經常需要使用Ajax向服務器請求數據。而近年來流行起來的axios則是一款強大的Ajax庫,它可以用來執行HTTP請求,包括Post、Get、Put、Delete等。在使用axios時,我們可能會遇到請求本地json時執行catch的情況。這時候應該如何解決呢?

axios.get('data.json')
.then(function (response) {
console.log(response.data);
})
.catch(function (error) {
console.log(error);
})

如上所示的代碼,假設我們需要請求本地的data.json文件,那么如果請求失敗,就會執行catch中的代碼。但是我們發現,有時候即使文件存在,請求仍會執行catch而不是then中的代碼。這是為什么呢?

其實,這是因為axios默認情況下請求的是跨域資源。而對于本地資源來說,跨域是不存在的。因此,在使用axios請求本地json時,需要將請求地址變成相對地址,或者在請求地址前加上“/”,如下所示:

axios.get('./data.json')
.then(function (response) {
console.log(response.data);
})
.catch(function (error) {
console.log(error);
})

或者:

axios.get('/data.json')
.then(function (response) {
console.log(response.data);
})
.catch(function (error) {
console.log(error);
})

這樣,就可以解決請求本地json時執行catch的問題了。