Мой вопрос о перехватчике $resource
(responseError). Я хочу подчеркнуть, что угловые множители I основаны на V1.3.6
.
Проблема:
app.factory('authInterceptor',['$q', '$location', '$log', function($q, $location, $log){
$log.debug('this is a regular factory with injection');
return {
responseError: function(response){
console.log(response)
// problem is that I cant check 401 by response.status,
// because the response here is AN ERROR OBJECT like `SyntaxError: ...`. Anyway to get the status?
return $q.reject(response);
}
}
}])
Когда я получаю 401 ответ, аргументы responseError
«s ошибка OBJECT как SyntaxError: Unexpected token U
, потому что réponse от сервера обычный текст Unathorized
со статусом 401
.
Но я хочу получить response.status
и сделать что-нибудь, если это 401
.
Любая помощь будет оценена по достоинству.
Итак, где 'responseError.status'? Функция responseError не определена. А что такое 'AuthInfoService'? – creeper
Я отредактировал successHandler, чтобы сделать вещи немного яснее. responseError является аргументом в successHandler обещания. AuthInfoService - это служба, которая помогает получить заголовок авторизации - это запрос. Он также может перенаправить пользователя на страницу входа в систему. Но вам это не нужно. – raneshu
Пожалуйста, снова проверьте мой вопрос. Моя проблема в том, что 'response.status' не определено! и это ваш «responseError.status» не определен. Angular1.3.6 – creeper