在POST请求的主体中发送数据
我正尝试将POST请求正文中的数据发送到我的AngularJS应用程序中的RESTful API。
我当前的请求结构是一个控制器 ,它抓取数据并将其发送给一个服务 , 服务然后调用来自其关联工厂的请求,如下所示:
调节器
 userService.saveReport(vm.user.id, searchParams) 
服务
service.saveReport = function (id, searchData) {
      var deferred = $q.defer();
      user.saveReport({ userID: id, searchData: searchData }, function(response) {
        deferred.resolve(response);
      }, function(e) {
        deferred.reject(e);
      });
      return deferred.promise;
    };
厂
    function user($resource, $localStorage, constants) {
    return $resource(constants.API_URL + '/users', { userID: '@userID' }, {
      getReports: {
        method: 'GET',
        url: constants.API_URL + '/users/:userID/reports',
        format: 'json',
        headers: {
          'Accept': 'application/vnd.abp.v1+json',
          'X-Mode': function() {
            return $localStorage.get('mode');
          }
        }
      },
      saveReport: {
        method: 'POST',
        url: constants.API_URL + '/users/:userID/reports',
        format: 'json',
        headers: {
          'Accept': 'application/vnd.abp.v1+json',
          'X-Mode': function() {
            return $localStorage.get('mode');
          }
        }
      }
    });
  }
  angular
    .module('abp')
    .factory('user', user);
})();
  我已经看到各种职位,其中州$resource允许data:通过发送形成请求的主体,但这似乎并没有工作。  我试图在$resource调用允许的参数中添加searchData: '@searchData' ,然后将其添加到数据部分,如下所示,但这不起作用(为简洁起见): 
return $resource(constants.API_URL + '/users', { userID: '@userID', searchData: '@searchData' }, {
    saveReport: {
        method: 'POST',
        url: constants.API_URL + '/users/:userID/reports',
        format: 'json',
        data: ':searchData',
        headers: {
          'Accept': 'application/vnd.abp.v1+json',
          'X-Mode': function() {
            return $localStorage.get('mode');
          }
        }
      }
}
如何在POST请求的主体中发送此请求的数据?
  好吧,现在我已经设法通过更改我在服务中发送searchData来实现这一目标。  我的控制器和工厂保持不变,但是我已将服务更改为以下内容,这看起来绝对完美: 
service.saveReport = function (id, searchData) {
      var deferred = $q.defer();
      user.saveReport({ userID: id }, searchData, function(response) {
        deferred.resolve(response);
      }, function(e) {
        deferred.reject(e);
      });
      return deferred.promise;
    };
                        链接地址: http://www.djcxy.com/p/77651.html
                        
                        
                    