タケユー・ウェブ日報

Ruby on Rails や Flutter といったWeb・モバイルアプリ技術を武器にお客様のビジネス立ち上げを支援する、タケユー・ウェブ株式会社の技術ブログです。

AngularJS ngResourceでパラメータにtokenを付ける

有名なstackoverflow

javascript - AngularJS: How to send auth token with $resource requests? - Stack Overflow

resource.$saveなケースでうまくいかなかったので

            var tokenWrapper = function (resource, action) {
                resource['_'+action] = resource[action];
                resource[action] = function (parameters, arg1, arg2, arg3) {
                    var tokenizedParameters = angular.extend({}, parameters || {}, {token: authentication.token});
                    if (arguments.length > 3) {
                        // non-GET "class" actions:
                        // ex) resource.$save
                        return resource['_'+action](
                            tokenizedParameters,
                            arg1,
                            arg2,
                            arg3
                        )
                    } else {
                        return resource['_'+action](
                            tokenizedParameters,
                            arg1,
                            arg2
                        )
                    }

                };
            };