angularjs - 用户身份验证后设置 $httpProvider 默认 header

标签 angularjs angular-services

我正在考虑为 $http 服务添加一个默认 header ,它的值是一个将在用户身份验证后生成的访问 token 。

module.config('$routeProvider', '$locationProvider', '$httpProvider'){
    $httpProvider.defaults.headers.post['XSRF-AUTH'] = 
        "some accessToken to be generated later"; 
}

问题是,config()当 Angular 引导其核心组件时应用块。有没有办法改变$ĥttpProvider动态的?

最佳答案

您可以在运行时通过 $http 对象而不是 $httpProvider 更改默认 header 。例如,您可以在配置块之外执行以下操作:

$http.defaults.headers.post['XSRF-AUTH'] = "access token";

查看 $http api 文档了解更多详细信息 http://docs.angularjs.org/api/ng/service/$http#setting-http-headers .

关于angularjs - 用户身份验证后设置 $httpProvider 默认 header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23124032/

相关文章:

javascript - 服务不在 Angular 事件处理程序范围内

Angular 9 和 .NET Web Api - 如何使用 http.post 请求修复 CORS 问题

javascript - Angular JS 和 Bootstrap Accordion 不工作

javascript - 从 Angular 服务/工厂链接和返回数组的问题

angularjs - 为什么 Angular Material Design 放弃了日期选择器

javascript - 将 JavaScript 变量分配给 AngularJS 范围对象并显示它

javascript - Angularjs 服务注入(inject)问题

angularjs - 使用 httpbackend 在工厂上进行单元测试 http post 正确的有效负载

javascript - angularjs 指令将名称属性绑定(bind)到模板元素

html - Bootstrap 面板中移动到下一行的文本