6

いくつかの理解の問題の後、私は本当に難しい問題に遭遇しました。カスタムヘッダーをAngularJSからの$requestで機能させることができません。私の定義は次のようになります。

$scope.re = $resource('/', {
    callback: 'JSON_CALLBACK'
    }, {
    'updateCart': {
        method: 'POST',
        headers: {
            'module': 'Shop',
            'mod_id': '1',
            'event': 'updateCart'
        }
    }
});

こちらもJSFIDDLE

この問題はまだアクティブですか?カスタムヘッダーを設定する別の方法はありますか?助けてくれてありがとう!:)

4

2 に答える 2

3

カスタムヘッダーについては、$httpにフォールバックする必要があると思います。私も同様のタスクを実行しようとしていましたが、$resourceを使用してそれを実行する方法はありません。

于 2013-01-07T00:10:40.893 に答える
0

この投稿は少し古いですが、私は答えを探していた私のような他の人々のために答えます:

return $resource('api/people/:id', {id: '@id'}, {
        min: {
            data: '',
            method: 'GET',
            headers: {'Content-Type': 'application/min+json'},
            isArray: true
        },
        update: {
            method: 'PUT'
        }
    });

dataそうしないとヘッダーが設定されないため、忘れないでください。

タイピングが大好きな私のような人にとって、typescriptのビルダーは次のように実行できます。

export class ResourceBuilder {

        static $inject = ['$resource'];

        constructor(private $resource: ng.resource.IResourceService) {
        }

        private updateAction: ng.resource.IActionDescriptor = {
            method: 'PUT',
            isArray: false
        };

        private minAction: any = {
            data: '',
            method: 'GET',
            headers: {'Content-Type': 'application/min+json'},
            isArray: true
        };

        public getResource(url: string, params?: Object): CrudResourceClass<any> {
            let resource = this.$resource(url, params, {
                update: this.updateAction,
                min: this.minAction
            });
            return <CrudResourceClass<any>> resource;
        }
    }

そのプロパティを見逃しているので、minActionタイプです。彼らが忘れているかどうかはわかりません。そのための問題を開きます。anyng.resource.IActionDescriptor

お役に立てば幸いです。

于 2016-08-12T11:56:37.810 に答える