Вы можете справиться с этим с помощью перехватчика запросов. Вы не предоставили нам то, что используете для маршрутизации, поэтому вам придется вставить свой код для маршрутизации на страницу 404 и страницу 500.
Фабрика будет выглядеть так:
angular.module("app").factory('sessionInterceptor', [factory]);
function factory() {
var requestInterceptor = {
response: function(response) {
// Code you want for successful responses here
return response;
},
responseError: function(rejection) {
if (rejection.status === 404) {
// 404 code here
}
return rejection;
}
};
return requestInterceptor;
}
Затем вам нужно добавить перехватчик в блоке конфигурации в $httpProvider
:
.config(['$httpProvider', function($httpProvider) {
$httpProvider.interceptors.push('sessionInterceptor');
}])
Все сетевые запросы, использующие $http
, теперь будут проходить через перехватчик запросов.