如何使用angular.tojson将数据发送到服务器?

时间:2015-03-20 14:32:58

标签: json angularjs rest

好吧,我很难理解angular.toJson的用法。我完全理解它改为json对象......

但是,我如何将此obj发送到服务器? 服务器在'GET'时已经提供了json obj,但是如何将它用于'POST'和其他人?

抱歉,我是新人:)

2 个答案:

答案 0 :(得分:1)

您可以在自己的应用中创建工厂:

 var app = angular.module('myApp', []);

 app.factory('requestsFactory', ['$http', function ($http) {
        return {
            postData: function (data) {
                var url = // some url to send your data
                return $http.post(data, url);
            };
        };
    }];

现在,您可以从控制器发布数据:

app.controller('yourController', ['$scope', 'requestsFactory', function ($scope, requestsFactory) {
    ...
    requestFactory.postData(anyData).success(function (result) {
        // if server send any response    
    }
    ...
}]);

此外,您可以$http使用GETPUTDELETE个请求。 Click here了解更多信息

答案 1 :(得分:0)

在将数据发布到服务器或使用$http service从服务器检索数据时,您实际上不需要自己调用angular.toJson()

这是Angular为您所做的默认行为。

来自the docs

  

Angular提供以下默认转换:

     

请求转换($httpProvider.defaults.transformRequest和   $http.defaults.transformRequest):

     
      
  • 如果请求配置对象的data属性包含   对象,将其序列化为JSON格式。
  •   
     

响应转换   ($httpProvider.defaults.transformResponse和   $http.defaults.transformResponse):

     
      
  • 如果检测到XSRF前缀,请将其删除(请参阅安全注意事项   以下部分)。
  •   
  • 如果检测到JSON响应,请使用a反序列化它   JSON解析器。
  •