简体   繁体   中英

Angularjs $http post error in Ionic

Here is my controller. When I want to post some data to backend, I get error.

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

The error I get :

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)

NOTE: I have already used this controller code in other project, but it works fine.

The problem is with " ngMockE2E " AngularJS module that should be used only for tests and not included like dependency for you project.

So solution: just remove this dependancy.

You have to describe $httpbackend.whenPOST in your app.js

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

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM