AngularJS $httpBackend асинхронный ответ
Я пытаюсь смоделировать бэкэнд для AngularJS(1.3.8)-app с ngMockE2E в качестве замены, пока не будет написан код бэкенда.
Я использую уже существующие сервисы, которые также запрашивают другие данные, но возвращают обещание. Я знаю, что ngMockE2E должен быть синхронным, однако я хотел посмотреть, есть ли способ сделать это асинхронно в первую очередь.
Оглядываясь в Интернете, я нашел это и поместил связанный с насмешками код в отдельный модуль, чтобы проверить, работает ли этот подход.
$httpBackend.whenAsync('projects/').respond(function (promise, headers, status) {
var deferred = $q.defer();
_getProjectIndex().then(function (result) {
deferred.resolve(result);
},
function (statusCode) {
console.log(statusCode);
deferred.reject(statusCode);
});
return deferred.promise;
});
Когда я пытаюсь запустить $httpBackend.whenAsync(), запрос выглядит как 404. При проверке того же запроса с помощью $httpBackend.whenGET() я получаю обещание, содержащее запрошенные данные.
Что я делаю неправильно?