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() я получаю обещание, содержащее запрошенные данные.

Что я делаю неправильно?

0 ответов

Другие вопросы по тегам