向所有AngularJS$http请求添加附加头

向所有AngularJS$http请求添加附加头,angularjs,express,httprequest,sails.js,angular-http,Angularjs,Express,Httprequest,Sails.js,Angular Http,我查阅了AngularJS的文档,发现: 我被告知我可以为我的应用程序执行的每个传出$http请求添加一个头。我是这样添加的,根据文档: app.run(function($http){ $http.defaults.headers.common.Authentication = 'Basic YmVlcDpib29w' console.log($http.defaults.headers.common.Authentication); }); 在客户端上记录$htt

我查阅了AngularJS的文档,发现:

我被告知我可以为我的应用程序执行的每个传出$http请求添加一个头。我是这样添加的,根据文档:

app.run(function($http){

    $http.defaults.headers.common.Authentication = 'Basic YmVlcDpib29w'

    console.log($http.defaults.headers.common.Authentication);

});
在客户端上记录
$http.defaults.headers.common.Authentication
属性,确认正在设置,如下所示:

但是,在请求的接收端(我的API),如果我记录整个请求对象,那么就找不到该头。下面是API端上“req.headers”对象的内容。没有要查看的身份验证标头

我使用Sails.js(Express.js的扩展)作为我的RESTfulAPI后端,使用AngularJS作为前端


有人介意提供一些关于可能发生的事情/我哪里出了问题的见解吗?

以及Chrome/Firebug网络选项卡对请求的说明?它们是否包含标题?如果是,那么问题不在于Angular。很好,现在检查一下……chrome网络选项卡将此显示为我的请求,也缺少标题:--因此Angular出于某种原因没有将其附加到请求。可能是同源策略问题。客户端站点和服务器托管在不同的端口上。您是否设置了
访问控制允许原点
标题?尝试使用
运行chrome——禁用web安全性
或使用网络调试器(如fiddler)来确保。我将如何检查?以下是来自FireFox调试器的完整请求/响应标头详细信息: