AngularJS $ http成功功能不起作用

时间:2017-02-22 20:52:37

标签: angularjs angularjs-http

我是AngularJS的新手,我正在按照教程向服务器发送REST请求。这是我的代码

angular.module('myApp')
  .controller('MainCtrl', ['$scope','$window','$http', function($scope,$window,$http) 
  {
$scope.submitForm = function() {
  var url = 'http://localhost:8080/Server/config/start';
  var request = $http({
    method: 'POST',
    url: url,
    headers: {'Content-Type': 'application/x-www-form-urlencoded'},
    transformRequest: function(obj) {
      var str = [];
      for(var p in obj)
        str.push(encodeURIComponent(p) + '=' + encodeURIComponent(obj[p]));
      return str.join('&');
    },
    data: {gsvalue: $scope.name}}).success(function () {});
} 

}]);

我在服务器端正确收到了请求,但我无法得到响应,成功函数也没有被调用。我还在控制台上收到两个警告

Error: $http(...).success is not a function

Error: JSON.parse: unexpected character at line 1 column 1 of the JSON data
.......
Possibly unhandled rejection: {}

我发现了一些类似的主题,但我无法解决他们的问题。

1 个答案:

答案 0 :(得分:3)

1.6中删除了

successerror。有一些原因:Why are angular $http success/error methods deprecated? Removed from v1.6?

使用thencatchfinally,这是Promises的标准。