Задержка $httpbackend с ресурсом $q и $
Я пытаюсь сделать задержку внутри $httpBackend
ответ и обрабатывать его $resource
сервис как это:
$httpBackend.whenGET(/\/courses\/\?id=\d+$/).respond(function(method, url) {
var regexp = /\d+$/;
var position = url.search(regexp);
var course = url.slice(position);
var courseToRet = angular.toJson(getCourse(course));
var defer = $q.defer();
$timeout(function() {
defer.resolve(courseToRet);
}, 500);
return [200, defer.promise, {}];
});
И мой $resource
выглядит так:
var resource = $resource('/courses/', null, {
'update': {method: 'PUT'}
});
function getCourseResource(courseId) {
return resource.get({id: courseId}).$promise;
}
В моем контроллере я пытаюсь получить такие данные:
Course.getCourseResource(self.courseId).then(function (result) {
console.log(result);
result.$promise.then(function(data) {
console.log(data);
data.$promise.then(function(data2) {
console.log(data2)
});
});
})
Но похоже, что это не работает. У меня нет идей. В учебных целях я должен сделать это именно так: используя $q
в $httpBackend
задержать и получить данные по $resource
, Спасибо!