Я пытался проверить процесс, когда какой-либо запрос был отправлен, и я хочу проверить, одобрены ли заголовки. Что я сделал не так?Как проверить заголовки в любом запросе в угловом?
проверить это codepen: http://codepen.io/gpincheiraa/pen/qZPrEp
App.js
angular
.module('exampleApp')
.config(configFn);
configFn.$inject = ['$httpProvider'];
function configFn($httpProvider){
$httpProvider.interceptors.push('ApiInterceptors');
}
ApiInterceptors.js
angular
.module('exampleApp')
.factory('ApiInterceptors', factory);
factory.$inject = ['$q'];
function factory($q) {
var service = {
request: handleRequest,
};
return service;
function handleRequest(request){
request.headers['Authorization'] = 'Token token= 59a2cc5ca5fd6c5cb4dadf636d94de1a';
return request;
}
}
ApiInterceptors_spec.js
describe('State check', function(){
var httpBackend;
beforeEach(module('exampleApp'));
beforeEach(inject(eachSpec));
function eachSpec($httpBackend){
httpBackend = $httpBackend;
}
it('Should be have an Authorization header on any request', spec1);
function spec1(){
httpBackend.expectGET('http://www.exampleAPI.com', null, function(headers){
console.log(headers);
expect(headers['Authorization']).toBeDefined();
});
}
});
Вы можете проверить console.log в вашем handleRequest? Я думаю, что это не работает, потому что ApiInterceptor определен на заводе. Фабрика не создается в фазе конфигурации. Обычно я сбрасываю определение перехватчика в фазе конфигурации, я не предоставляю его в угловой среде, потому что это необязательно, поскольку оно не будет полезно в других местах, чем там. – Walfrat
@Walfrat спасибо за ваш совет. Я попробую, и тогда я скажу вам. Отвечая на ваш вопрос, нет, console.log никогда не выполняется. –