Angularjs $http post Ionic 错误

Angularjs $http post error in Ionic

这是我的控制器。当我想 post 一些数据到后端时,出现错误。

.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)

注意:我已经在其他项目中使用过这个控制器代码,但它工作正常。

问题出在“ngMockE2E”AngularJS 模块上,该模块应该仅用于测试,而不应包含在您项目的依赖项中。

所以解决方案:删除这个依赖。

您必须在 app.js

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