超時以後能夠在then的第二個error方法中獲取,this
main.js中設置以下:spa
1 Vue.http.interceptors.push((request, next) => { 2 let timeout; 3 // 這裡改用 _timeout 4 if (request._timeout) { 5 timeout = setTimeout(() => { 6 //自定義響應體 status:408,statustext:"請求超時",並返回給下下邊的next 7 next(request.respondWith(request.body, { 8 status: 408, 9 statusText: '請求超時' 10 })); 11 12 }, request._timeout); 13 } 14 next((response) => { 15 console.log(response.status)//若是超時輸出408 16 return response; 17 }) 18 })
頁面請求設置:code
this.$http.get(`repairs/${this.repairs_id}`,{ params:{with:'room;user'}, _timeout:100,//設置超時時間 }).then((response)=>{ },(err)=>{ console.log(err.status);//若是超時,此處輸出408,也在這裏作超時處理操做 });