Vue項(xiàng)目請求超時(shí)處理方式
Vue項(xiàng)目請求超時(shí)
現(xiàn)在網(wǎng)頁項(xiàng)目大多采用前后端分離模式,這種模式優(yōu)點(diǎn)有很多,但是也會(huì)帶來不少問題
比如
請求后端接口時(shí)會(huì)受網(wǎng)絡(luò)因素影響,導(dǎo)致請求超時(shí);
這就需要我們在請求方法中設(shè)置攔截,對請求超時(shí)做處理;
我在項(xiàng)目中使用的axios封裝方法
設(shè)置網(wǎng)絡(luò)請超時(shí)攔截處理
import axios from "axios";
import { get } from "http";
import { Toast } from 'vant';
// api 路徑
// const server = "https://operator-app.funenc.com";
const httpAxios = axios.create();//創(chuàng)建實(shí)例
let Config = {
TIMEOUT: 6000,//設(shè)置超時(shí)時(shí)間為6秒
baseURL: {
dev: window.BASEURL_01,
prod: ''
}
};
// axios 配置
httpAxios.defaults.timeout = Config.TIMEOUT;
httpAxios.interceptors.response.use(
response => {
return response;
},
error => {
if(error.message.includes('timeout')){ // 判斷請求異常信息中是否含有超時(shí)timeout字符串
Toast('請求超時(shí),請稍后再試')
return Promise.reject(error); // reject這個(gè)錯(cuò)誤信息
}
Toast('網(wǎng)絡(luò)連接失敗,請稍后再試')
return Promise.reject(error);
});
export function fetch(url, method = "GET", params, query) {
if (sessionStorage.app_token && sessionStorage.device_id) {
httpAxios.defaults.headers["app-token"] = sessionStorage.app_token;
}
return new Promise((resolve, reject) => {
httpAxios({
method: method,
url: global["G_SERVER_URL"] + url,
data: params,
params: query
})
.then(response => {
resolve(response.data);
})
.catch(error => {
reject(error);
});
});
}總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
vue3.0+ts引入詳細(xì)步驟以及語法校驗(yàn)報(bào)錯(cuò)問題解決辦法
Vue?3.0是一個(gè)非常流行的JavaScript框架,不僅易于學(xué)習(xí)和使用,而且可以與許多UI框架集成,下面這篇文章主要給大家介紹了關(guān)于vue3.0+ts引入詳細(xì)步驟以及語法校驗(yàn)報(bào)錯(cuò)問題的解決辦法,需要的朋友可以參考下2024-01-01
Jenkins自動(dòng)化部署Vue項(xiàng)目的方法實(shí)現(xiàn)
本文主要介紹了Jenkins自動(dòng)化部署Vue項(xiàng)目的方法實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-04-04
Vue Element使用icon圖標(biāo)教程詳解(第三方)
element-ui自帶的圖標(biāo)庫不夠全,還是需要需要引入第三方icon。下面小編給大家?guī)砹薞ue Element使用icon圖標(biāo)教程,感興趣的朋友一起看看吧2018-02-02
Vue中Axios配置不同的baseURL,請求不同的域名接口方式
這篇文章主要介紹了Vue中Axios配置不同的baseURL,請求不同的域名接口方式,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-07-07
Vue首屏加載過慢出現(xiàn)白屏的6種優(yōu)化方案匯總
vue項(xiàng)目打包上線后,首次打開會(huì)發(fā)現(xiàn)加載很慢,出現(xiàn)白屏的問題,下面這篇文章主要給大家介紹了關(guān)于Vue首屏加載過慢出現(xiàn)白屏的6種優(yōu)化方案,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-02-02

