在邮寄请求中发送正确的正文

时间:2016-07-15 08:11:37

标签: angularjs

我试图向我的服务器发送帖子请求。当我使用邮递员时,我收到正确的数据,如下enter image description here

现在我想在我的角项目中从工厂发送此请求:

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

2 个答案:

答案 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发送动态,那就更好了。