如何将对象更改为字符串javascript?

时间:2015-07-17 11:22:39

标签: javascript angularjs

我使用角度factoryservice

发布了一些数据
  return service({cli: cli, customerType: appointmentType}).amend_customer({
            name: data.name,
            surname: data.surname,
            address: data.address,
            postcode: data.postcode,
            city: data.city
        }).$promise;

我想将上面的数据发布为字符串而不是对象,任何想法如何处理。 我知道$query.paramsJSON.stringify(data)会转换为字符串,但我需要像这样返回service

API返回400 - 错误请求 如果数据是字符串格式 - 它会很高兴,我已经通过字符串格式进行了测试并且它可以正常工作

1 个答案:

答案 0 :(得分:0)

您可以像这样布置您的服务:

angular.module('app').factory("DataService",
    function($http) {
        return {
            update: function(data) {
                return $http({
                    url: '/route',
                    method: "POST",
                    data: JSON.stringify({
                      name: data.name,
                      surname: data.surname,
                      address: data.address,
                      postcode: data.postcode,
                      city: data.city
                    }),
                    headers: {
                        'Content-Type': 'application/json'
                    }
                }).success(function(data, status, headers, config) {
                    console.log("Success!");
                    //Do something with your data here.
                }).error(function(data, status, headers, config) {
                    console.log("Error.");
                });
            }
        }
    }
);

然后,在您的代码中,无论您在哪里使用该服务,都可以致电:

DataService.update(data);

这仍将返回您需要的承诺,它只是采用更标准的角度格式。此外,只要您注入,您的服务就可以在任何模块中访问。