无法使用AngularJS POST JSON

时间:2014-04-05 18:36:52

标签: jquery angularjs

我有一些旧的jQuery代码,我正在尝试迁移到AngularJS。该jQuery代码如下所示:

var vm = { name: getName(), description: getDescription() };
$.ajax({
  url: "https://mydomain.com/order/place",
  type: "POST",
  data: JSON.stringify(vm),
  contentType: "application/json",
  success: order_Succeeded,
  error: order_Failed
});

我知道代码有效。现在,我正在尝试在AngularJS中做到这一点。在我的尝试中,我正在尝试:

$scope.sendOrder = function() {
  $http.post(u, $scope.getModel())
    .success(function (data, status, headers, config) {
      console.log('all good');
    })
    .error(function (data, status, headers, config) {
      console.log(status);
      console.log(data);
    })
  ;
};

$scope.getModel = function () {
  var vm = {
    name: getName(), 
    description: getDescription()
  };
  return vm;
};

执行上述代码时,出现404错误。我不知道为什么。我一直盯着它看起来对我来说是正确的。有人可以告诉我我做错了吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

简短回答,请在拨打电话前执行此操作:

$http.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded; charset=UTF-8';

更长的答案,请阅读此PHP focused article和此ColdFusion focused article

如果这没有帮助,请首先验证网址,以确保您在AngularJS应用中没有输入错误。然后尝试使用网络嗅探器查看两者之间的数据包差异。