AngualrJS - 发布请求为空

时间:2017-05-12 14:27:22

标签: angularjs post

我有这个简单的数组,我需要向后端控制器发出一个post请求,但每次我得到一个空数组[]

这是我的html:

<div class="input-container" ng-repeat="lang in languages">
    <label for="tagName">{{:: 'tagName' | translate }}</label>
    <input placeholder="{{:: 'tagName' | translate }}" id="tagName" type="text" ng-model="translations[lang]">
</div>

这是我的JS:

$scope.createNewTag = function () {
    console.log($scope.translations);
    var data = $scope.translations;

    var method = 'post';
    var url = './tags';
    $http.post(url,data);      
};

console.log($scope.translations);打印:[en:"hello", it:"ciao"]但是当我在Chrome控制台中看到请求playload为空时,在我的控制器中我得到一个空数组。

我错过了什么?

1 个答案:

答案 0 :(得分:0)

你忘了解决电话会议的承诺,否则你将无法处理回复。

?read.table

https://docs.angularjs.org/api/ng/service/ $ HTTP

关于空的有效负载,我会查看代码以检查是否有任何$http.post('/someUrl', data) .then(function(resp){ //success }), function(err){ //catch exception }); 拦截器在触发之前操纵请求,也许您在那里更改了http标头并且Angular无法再次序列化数据。

也许这可以帮到你:

Angularjs $http POST request empty array

编辑:我看到你传递一个数组作为参数,但content-type规范声明它必须是一个键值对对象,尝试将数组包装在一个对象

$http