Angular 1在邮件上发送空邮件负载
问题描述:
我有一个简单的应用程序将json数组发布到我的API中。我还有其他几个正在成功运行的帖子。Angular 1在邮件上发送空邮件负载
当我调查我的网络流量时,我发现POST在有效负载中发送了一个空数组。
有请求时变量中有数据,我已经多次验证过这个。
的请求:
function postDemo(dp) {
var x = dp;
return $q(function (resolve, reject) {
$http({
method: 'POST',
url: BASE + 'acl/newDemo',
data: x,
crossDomain: true,
contentType: 'application/json',
xhrFields: {
withCredentials: true
}
})
.success(function (data, status) {
resolve(function() {
resolve(true);
});
})
.error(function (data, status) {
reject(false);
});
});
}
了var x包含数组,并填充为我先前所说。这个问题似乎来自这一点。该API工作正常,并且在没有读取数据时正确,因为没有实际发送数据。
我试过改变内容类型,并没有什么区别。
该数组来自$ scope并输出一个复杂对象,该对象具有在POST变量时在x变量中占据的所有值。
这是浏览器被示出作为阵列值,则张贴之前:
X = [ billingAddress:对象, billingDetails:对象, 公司:对象, importCompany:对象, importProfile:数组[0] ]
和有效载荷的屏幕截图:
答
1)$ http已经返回一个承诺,不需要使用$ q她。
2)使用这个syntaxe:$ HTTP(。),然后(sucess(),错误()):
https://docs.angularjs.org/api/ng/service/ $ HTTP
function postDemo(dp) {
return $http({
method: 'POST',
url: BASE + 'acl/newDemo',
data: dp,
crossDomain: true,
contentType: 'application/json',
xhrFields: {
withCredentials: true
}
}).then(function successCallback(response) {
return true ;
}, function errorCallback(response) {
return false ;
});
}
我欣赏的指针,但它不会改变的问题或提供任何解决方案。 –