我试图向我的服务器发送帖子请求。当我使用邮递员时,我收到正确的数据,如下
现在我想在我的角项目中从工厂发送此请求:
var data = [
{
"id": 6155335970855059712,
"userId": 2,
"instagramId": "0x4d_ehdi_wm",
"searchId": "mehdiketabdar",
"mediaId": null,
"phoneNumber": "09368640183",
"name": "mehdi",
"date": 1467546456287,
"otherData": [
]
}
];
var req = {
method: 'POST',
url: 'http://atitec.ddns.net:2500/admin_api/',
headers: {
'Content-Type': 'application/json'
},
data: data
};
request.url = req.url + "mGetListOfOrders";
$http(request);
但是我在控制台中看到了以下错误:
选项http://atitec.ddns.net:2500/admin_api/mGetListOfOrders net :: ERR_EMPTY_RESPONSE
答案 0 :(得分:1)
我想你需要对数据进行字符串化:
var req = {
method: 'POST',
url: 'http://atitec.ddns.net:2500/admin_api/',
headers: {
'Content-Type': 'application/json'
},
data: JSON.stringify(data)
};
request.url = req.url + "mGetListOfOrders";
$http(request);
答案 1 :(得分:0)
发送请求的最简单方法是通过工厂。创建一个RestFactory.js文件并尝试执行如下所述的操作。
var commonFactories = angular.module('commonFactories', []);
commonFactories.factory('yourFactoryApiName', function($http) {
var anyObj = {};
yourFactoryApiName.yourMethodName = function(dataObj) {
return $http.post('yourAPIURL', dataObj);
}
return anyObj;
)};
将commonFactories依赖项注入ur app.js并在项目的任何位置使用该服务。如果你能让所有POST Api发送动态,那就更好了。