ngResource提交json数据如何带参数

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的params

var teamResource = new TeamServe($scope.team);
teamResource.$save({ session_id: $rootScope.session.session_id }, function(data) {
    console.log(data);
    console.log('添加成功');
}, function() {
    console.log('添加失败');
})

第二种方法自然是更简洁的,推荐使用。

...
推荐:http://www.cnblogs.com/ys-ys/p/5016601.html?utm_source=tuicool&utm_medium=referral

posted @ 2016-09-18 17:17  CooMark  阅读(379)  评论(0编辑  收藏  举报