2017-10-19 3 views
6

edit2 : https://stackoverflow.com/a/37784969/107282은 실제 장치에서는 발생하지 않으므로 걱정할 필요가 없다고 제안합니다.Axios OPTIONS 응답의 핸들 상태 (예 : 503)


나는 VueJS 하이브리드 (코르도바) 응용 프로그램에 Axios의를 사용하고 있는데 API를 호출하고 있습니다.

Axios의가 (제대로) 내 GET/POST 요청하기 전에 '프리 플라이트'OPTIONS 요청을하고 있지만, API가 시점에서 503을 반환하는 경우, 처리 코드 내 오류가 호출되지 않습니다.

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

어떻게이 오류 상태를 잡을 수 있습니까?


편집 : 크롬 개발 도구에서 스크린 샷 :

503 on OPTIONS request

+0

'503'의 경우 '응답'의 내용은 무엇입니까? 'response.data'가 설정되어 있습니까? – Sergio

+0

나는 axios를 사용하고 get operation에서 catch 블록에 의해 처리 된 503 오류를 얻습니다. status는 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

옵션 요청을 보내지 않았기 때문입니다. –