proteye
@proteye
Web programmer

Куда вписать функцию, если в Angular $resource результатом $save пришел 422 ответ (вместо 200)?

Вызываю стандартный метод $save у ng-resource. Если ответ от сервера 200, то все норм и мы попадаем в метод then. Если же ответ 422 (validation failed), то then вообще не отрабатывает.
Как быть? Куда вписать функцию в случае error, когда код ответа отличен от 200?
masterOrder.$save().then(function (data) {
                if (data.$resolved == true) {
                    $scope.acceptSuccess = true;
                    alertOptions.content = data.flash.message;
                    alertOptions.type = data.flash.class;
                    $alert(alertOptions);
                    $anchorScroll();
                } else {
                    alert('failed');
                }
            });
  • Вопрос задан
  • 160 просмотров
Решения вопроса 1
Вам надо подтянуть знания по промисам: then вторым аргументом принимает обработчик ошибки. Еще есть метод catch, который ловит вообще все ошибки.
Правда, я Angular не знаю, возможно, там свои кривые особые промисы.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы