Angularjs $ q.all

Я реализовал $ q.all в angularjs, но не могу заставить работать код. Вот мой код:

UploadService.uploadQuestion = function(questions){

        var promises = [];

        for(var i = 0 ; i < questions.length ; i++){

            var deffered  = $q.defer();
            var question  = questions[i]; 

            $http({

                url   : 'upload/question',
                method: 'POST',
                data  : question
            }).
            success(function(data){
                deffered.resolve(data);
            }).
            error(function(error){
                deffered.reject();
            });

            promises.push(deffered.promise);
        }

        return $q.all(promises);
    }

А вот мой контроллер, который вызывает сервисы:

uploadService.uploadQuestion(questions).then(function(datas){

   //the datas can not be retrieved although the server has responded    
}, 
function(errors){ 
   //errors can not be retrieved also

})

Я думаю, что есть некоторые проблемы с настройкой $ q.all в моем сервисе.

Ответы на вопрос(3)

Ваш ответ на вопрос