Я работаю с угловым http -перехватчиком и обрабатываю различные коды состояния ошибок. Тем не менее, у меня есть проблема с обработкой кода ошибки 429 (слишком много запросов). В то время как бэкэнд правильно реагирует со статусом 429 в таких инструментах, как почтальон, в Angular, я получаю errorresponse.status = 0 вместо 429, когда запрос возвращает эту ошибку. Но когда сервер отвечает 429, ErrorResponse.status устанавливается на 0. < /p>
I проверил тот же запрос в почте, и сервер правильно возвращает 429, но это не происходит в угловом. intercept(request: HttpRequest, next: HttpHandler): Observable {
let accessToken = sessionStorage.getItem("access_token");
if (request.url !== './assets/config/env.json') {
request = request.clone({
setHeaders: {
Authorization: `Bearer ${accessToken}`,
sid: `${this.config.getEnv('sid')}`,
}
});
}
return next.handle(request).pipe(
tap(
event => this.handleResponse(request, event),
error => this.handleError(request, error)
)
);
}
handleError(req: HttpRequest, errorResponse: HttpErrorResponse) {
if (errorResponse.status === 429) {
this.mostrarMensajeNoDuplicado("You have reached the user request limit, try again later.");
}
}
Подробнее здесь: https://stackoverflow.com/questions/796 ... ead-of-429
Angular HttpClient Interceptor: Ошибка 429 Возвращает статус 0 вместо 429 ⇐ Javascript
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение