我正在为工作中的 Angular2 应用程序制作原型。该应用程序应该在一些公司中间件下运行,该中间件期望在从 angular2 应用程序获得的响应中获得多个Link标头。不幸的是,我无法弄清楚如何将标头添加到 Angular 开箱即用的响应中。
为了澄清我的意思——当我直接向我的 Angular 应用程序发送 GET 请求时,它会发回浏览器可以呈现到 SPA 中的文本/HTML 响应。我想在这个响应中添加标题,但不知道怎么做。我发现最接近的是这里的讨论:Angular2 - set headers for each request
这听起来像是重复的,但是在查看了类似的问题后,我发现了如何将标头添加到我使用 HttpModule 中的 HTTP 对象显式生成的响应中,而不是如何将标头附加到 Angular 创建的响应中-盒子。我很想使用像 HTTP 拦截器这样的东西,它只是将标头附加到我的应用程序发出的每个响应中,但看起来 Angular2 在 4.1 版之前不会有拦截器。
编辑:我尝试过的事情:
- 在我的(主)AppModule 中为 Http ResponseOptions 添加提供程序,将标头添加到响应中
- 这会将标头添加到我从我的应用程序从 HttpModule 接收的 http 请求中收到的所有响应中,但不会将标头添加到我的应用程序本身发送到外部服务的响应中。
编辑 2:我误解了我的 Angular 应用程序的结束位置以及托管它的服务器的开始位置。可以在服务器中添加这样的标头 - 对于我的简单示例,我需要配置 webpack-dev-server。请参阅下面接受的答案。