Мой вопрос в том, что учитывая силу перехватчиков, имеет смысл обернуть $http
в службу, чтобы весь мой другой код просто вызывал эту оболочку. Теперь основные задачи, такие как обработка заголовков и исключений, могут быть легко выполнены перехватчиками. Так что, хотя я не могу сейчас думать о действительной usecase, но позволяет просто защитить любые будущие изменения api и т.д. До $http
? Или, может быть, позже перейдите на $resource?
Также обратите внимание, что здесь я говорю об основной службе обертки вокруг методов $http
s, а не о клиентской службе, такой как DataService, с методами sendData, receiveData, которая обертывает вызовы $http
.
Ниже приведен пример кода -
angular.module(‘myapp’).factory(‘myhttpwrapper’, ['$http', function (http) {
return {
myGet: function (getUrl) {
return http.get(getUrl);
},
myPost: function (postUrl, data) {
return http.post(postUrl, data);
},
// other $http wrappers
};
}]);
Теперь все остальные коды будут использовать методы myhttpwrappers myGet
, myPost
вместо $http
s get, post methods. Надеюсь, это имеет смысл!
[EDIT]. В каких случаях мы обязательно будем перехватывать запросы на добавление заголовков, протоколирование и ответы для ведения журнала, обработку исключений и т.д. Но я уверен, что они могут обрабатываться перехватчиками. Позже переход от $http до $resource неизвестен на данный момент.
Спасибо.