$ resource update在url angularjs中发送params

时间:2016-01-15 18:30:58

标签: angularjs

这是我的资源:

socialnetworkServices.factory('UpdateResource', 
    [
        '$resource', 
        '$q', 
        function($resource, $q){
            return {
                update: function (url, sendParams) {
                    return $resource(
                                url, 
                                null, 
                                { 
                                    'update': {
                                        method:'PUT', 
                                        headers: {
                                            'Content-Type': 'application/json'
                                        }, 
                                        params: 
                                        sendParams 
                                     }
                                }).update();
                }
    }
}]);

我的问题是,当调用此方法更新对象(sendParams)时,在url中发送而不是在请求正文中。

PD:我不知道如何把代码变得漂亮,对不起

1 个答案:

答案 0 :(得分:2)

您使用params错误中的$resouce。您要发送的有效负载必须是您正在进行的实际update呼叫的参数:

socialnetworkServices.factory('UpdateResource', [
    '$resource',
    '$q',
    function($resource, $q) {
        return {
            update: function(url, sendParams) {
                return $resource(
                    url,
                    null, {
                        'update': {
                            method: 'PUT',
                            headers: {
                                'Content-Type': 'application/json'
                            }
                        }
                    }).update(sendParams); // Put your payload parameters here
            }
        }
    }
]);