使用Angular 2时如何读取HTTP协议头?

时间:2016-07-15 04:24:18

标签: javascript angular http-headers

My Angular 2应用程序位于反向代理后面,可以添加HTTP标头,如:

Auth-User: somebody 
Auth-Groups: something, something, ...

如何从Angular 2应用程序中读取这些值?请注意,我不是:

  • 进行新的http通话
  • 进行用户名/密码登录,添加一些我可以在CanActivate中使用的sessionStorage

基本上,我需要在浏览器第一次访问我的服务器时支持基于可信HTTP标头的SSO方案。

有什么想法吗?

拉​​斯

1 个答案:

答案 0 :(得分:0)

我意识到它无法直接完成。 Angular是面向客户端的,并且由浏览器进行了大量沙盒化,因此只有服务器才能访问必要的头文件。我想出的是:

  • 在服务器上获取一些用户设置服务。包括响应的用户和组信息。对服务器的服务调用当然不能信任客户端关于谁是当前用户和组成员身份的视图。这是我选择的那个
  • 使用Universal Angular,它是面向服务器端的。就我而言,它不符合公司的文化。

因此,不像大多数示例/教程那样使用基本的身份验证方案,解决方案只是将标头值包含在服务调用中。