$ http в приложении Ionic не ловит ошибки

0

Я запускаю приложение Ionic для Android под эмулятором Genymotion.

У меня проблема с $ http. Когда запрос будет успешным, все будет хорошо. Однако, когда запрос вернется с кодом 401/403/404, исключение будет ionic.bundle.js в Ionic framework: ionic.bundle.js строка 17288:

"Невозможно прочитать данные свойства" неопределенные ", ответ не определен.

Кажется, что Ionic перехватывает ответы, а ошибки 401/403/404 по-прежнему пытаются вызвать обратный вызов.success(). См. Прилагаемую выдержку из ionic.bundle.js:

Изображение 174551

Ионная версия: 1.0.0-rc.0

Теги:
genymotion
ionic

1 ответ

0
Лучший ответ

Проблема была вызвана тем, что у меня был HTTP-перехватчик в приложении app.js. Это казалось безобидным, но комментируя это, решила проблему. Ниже видно, что закомментировано:

//  .config(['$httpProvider', function($httpProvider) {
//    $httpProvider.interceptors.push(function() {
//      return {
//        'responseError': function(rejection) {
//          var message = "HTTP Error " + rejection.statusText + "(" + rejection.status + ") on " + rejection.config.method + " " + rejection.config.url;
//
//          if (typeof rejection.data !== 'undefined')
//            message += " Error response: " + JSON.stringify(rejection.data);
//
//          // same as above
//          if (typeof _errs !== 'undefined')
//            _errs.push(new Error(message));
//          else
//            console.log(message);
//        }
//      };
//    });
//  }])

Ещё вопросы

Сообщество Overcoder
Наверх
Меню