我正在尝试将带有json数据的post请求发送到服务器。但似乎angularJS $ http.post方法没有将数据设置为body。如何将数据设置为正文?
使用asp.net webapi实现远程服务器,并将从正文中读取数据。所以我需要将json数据设置为请求体。
我该如何实施?谢谢。
如果请求发送到同一站点,那么它可以正常工作。但是,如果我将请求发送到CROS服务器,它将无法正常工作。
在远程后端服务器中,我已经更新了webconfig以使其支持CROS调用,但它仍然无效。
$http.post(resourceUri, requestData)
.success(function (response) {
})
.error(function (data, status, header, config) {
});
答案 0 :(得分:10)
您可以像这样构建请求:
var req = {
method: 'POST',
url: 'http://example.com',
headers: {
'Content-Type': "application/json"
},
data: { test: 'test' }
}
$http(req).success(function(){...}).error(function(){...});
答案 1 :(得分:9)
你可以这样做 1.制作一个控制器 2.为通话添加数据
post调用的语法如下
$http.post(url, data, [config])
app.controller('controller', function ($scope, $http, $routeParams) {
$http.post('url',data.call1($routeParams.id))
.success(function (response) {
$scope.response = response;
})
.error(function (data, status, headers, config) {
});
});
var data = {
call1:
function (value) {
return {'key': value, 'key': 'some text'};
}
}