AngularJS $资源不发送自定义标头

时间:2013-11-06 20:45:56

标签: angularjs angular-resource

我正在使用角度和角度资源版本1.1.5,我正在使用$ resource向REST服务发出请求。但似乎自定义标头未附加到请求。我的定义如下。我做错了什么?

myApp.factory('User', function($resource) {
    var User = $resource('http://localhost\\:7017/mydomain/users/jack', { }, {
        get: {
            method: 'GET',
            isArray: false,
            headers: {'X-Requested-By':'abc'}
        }
    });
    return User;
});

3 个答案:

答案 0 :(得分:1)

阅读本文,了解如何在一个位置配置默认标头:http://docs.angularjs.org/api/ng.$http

修改

您的标头必须包含在Access-Control-Allow-Headers标头中,以响应OPTIONS请求,该请求会在您的GET请求之前自动发送。

答案 1 :(得分:1)

您可以修改$httpProvider

中的默认标头

标题是一个对象,分为commonpatchpostput

headers in dev tools

因此,如果您想更改所有请求的默认值,请执行

$httpProvider.defaults.headers.put['Content-Type'] = 'application/json';

答案 2 :(得分:1)

您必须使用其名称来调用get方法,即User.get(callback)

使用User.query(callback)

调用get方法时,似乎不会发送自定义标头