2017-10-19 134 views
6

edit2:https://stackoverflow.com/a/37784969/107282表明我不必擔心,因爲它在真實設備上不會發生。Axios OPTIONS響應中的句柄狀態(例如503)


我在一家VueJS混合(科爾多瓦)的應用程序使用愛可信和我打電話的API。

愛可信是(正確地)做我的GET/POST請求前的「預檢」 OPTIONS的要求,但如果在API是返回503,我的錯誤處理代碼不會被調用。

HTTP.post(url, data, {headers: {Authorization: 'Bearer ' + token.getAccessToken()}}) 
 
    .then(response => response) 
 
    .catch(error => { 
 
    // Not reached 
 
    });

如何抓住這個錯誤狀態?


編輯:從Chrome瀏覽器開發工具截圖:

503 on OPTIONS request

+0

在'503'的情況下'response'的內容是什麼?是否設置了response.data? – Sergio

+0

我使用axios並獲取503錯誤,通過catch塊處理獲取操作,狀態爲error.response.status – FAjir

+1

是不是503網絡錯誤?網絡錯誤不由axios處理。 – sandrooco

回答

2

我能夠重現問題,我能找到如下

axios.interceptors.response.use(null, (error) => { 
    return Promise.reject(error); 
}); 

由於簡單的解決辦法你可以在我的測試中看到我能夠得到不同場景的錯誤和響應

Network error

+0

雖然這不在OPTIONS請求上。 – jezmck

+0

這是因爲你不發送選項請求 –