ngResource提交json数据如何带参数
直接使用ngResource和REST服务接口交互可以让程序显得简洁,前提是配置好跨域和OPTIONS请求的支持,与此同时,如果需要带些额外的参数,有两种方式:
1.重写resource对象的action,添加params属性
angular.module("myApp",["ngResource"]).service('TeamServe', ['$resource', '$rootScope', '$http', function($resource, $rootScope, $http) { return $resource("http://somesite.com/team", {}, { save: { method: 'POST', params: { /*默认参数配置,可以是一个function*/ session_id: function() { return $rootScope.session.session_id; } } }, query: { method: 'GET', params: { session_id: "$rootScope.session.session_id" }, isArray: true }, });}])
2.action默认支持带参数
action(比如$save(params,succes,error))第一个参数就是,如果第一参数是function,那么angular自动认为他是第一个回调,而不是action的paramsvar teamResource = new TeamServe($scope.team);teamResource.$save({ session_id: $rootScope.session.session_id }, function(data) { console.log(data); console.log('添加成功');}, function() { console.log('添加失败');})
第二种方法自然是更简洁的,推荐使用。
...
推荐: