2015-09-11 4 views
0

Вот мой контроллер. Когда я хочу опубликовать некоторые данные в бэкэнд, я получаю ошибку.

.controller('LoginCtrl', function($http, $scope, $state, $ionicPopup, AuthService) { 
    $http.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded;charset=utf-8'; 
    $http({ 
     method: 'POST', 
     url: 'http://cms.focusweb.ir/Json/get_article', 
     data: { id: 25 }, 
     headers: {'Content-Type': 'application/x-www-form-urlencoded'} 
    }) 
    .success(function(response) { 
     // handle success things 
     console.log(response); 
    }) 
    .error(function(data, status, headers, config) { 
     // handle error things 
    }) 
}) 

Ошибка я получаю:

Error: Unexpected request: POST http://cms.focusweb.ir/Json/get_article 
No more request expected 
at $httpBackend (angular-mocks.js:1207) 
at sendReq (ionic.bundle.js:19160) 
at status.$get.serverRequest (ionic.bundle.js:18872) 
at processQueue (ionic.bundle.js:23394) 
at ionic.bundle.js:23410 
at Scope.parent.$get.Scope.$eval (ionic.bundle.js:24673) 
at Scope.parent.$get.Scope.$digest (ionic.bundle.js:24484) 
at Scope.parent.$get.Scope.$apply (ionic.bundle.js:24778) 
at done (ionic.bundle.js:19191) 
at completeRequest (ionic.bundle.js:19363) 

Примечание: я уже использовал этот контроллер код в другом проекте, но он отлично работает.

+1

«Неожиданный запрос» - это выглядит, как вы внезапно включен модуль ngMock (или другой модуль для тестирования) –

+0

@STEVER да, именно так. В 'app.js' я включил' ngMockE2E'. Вот почему он работает в других сценариях. Что мне делать? –

+0

@ STEVER Я очистил 'ngMockE2E' и тестирую часть, и теперь он работает отлично. Если вы опубликуете ответ, я бы принял его как принятый ответ. Благодарю. –

ответ

2

Проблема с «ngMockE2E« Модуль AngularJS, который должен использоваться только для тестов и не включен в качестве зависимости для вас проекта.

Итак, решение: просто удалите эту зависимость.

-1

Вы должны описать $ httpbackend.whenPOST в вашем app.js

$httpBackend.whenPOST('http://cms.focusweb.ir/Json/get_article')`enter code here` 
    .respond();