AngularJS - 设置适用于所有 http 请求的通用基本身份验证 header
AngularJS - set common Basic Auth header that is applied to all http requests
我在后端使用 AngularJS 和 Play REST 服务,我对这两个概念都很陌生。
我想知道是否有一种方法可以让我只在一个地方编写 Basic Auth header,以便默认将其添加到 Angular 发出的每个 http 请求中。
现在我在每个请求的开头添加这一行。
$http.defaults.headers.common['Authorization'] = 'Basic ' + Base64.encode(username + ':' + password);
我希望它只出现在一个地方而不是多个地方,以便于代码维护。
提前致谢!
您可以通过在 angular.config
中使用 $http 拦截器来完成此操作
var app = angular.module();
app.config(['$httpProvider', function($httpProvier){
$httpProvider.interceptors.push(function(){
return {
request: function(config) {
config.headers.Authorization = YOUR_AUTHORIZATION_HEADER;
return config;
}
}
});
}]);
我在后端使用 AngularJS 和 Play REST 服务,我对这两个概念都很陌生。 我想知道是否有一种方法可以让我只在一个地方编写 Basic Auth header,以便默认将其添加到 Angular 发出的每个 http 请求中。
现在我在每个请求的开头添加这一行。
$http.defaults.headers.common['Authorization'] = 'Basic ' + Base64.encode(username + ':' + password);
我希望它只出现在一个地方而不是多个地方,以便于代码维护。 提前致谢!
您可以通过在 angular.config
中使用 $http 拦截器来完成此操作var app = angular.module();
app.config(['$httpProvider', function($httpProvier){
$httpProvider.interceptors.push(function(){
return {
request: function(config) {
config.headers.Authorization = YOUR_AUTHORIZATION_HEADER;
return config;
}
}
});
}]);