Ngxs + WebSocket |如何拦截连接并添加自定义HTTP标头?

时间:2018-06-12 05:45:38

标签: angular websocket ngxs

我正在使用ngxs'NgxsWebsocketPluginModule从我的Angular应用程序中创建一个websocket。要对连接客户端进行身份验证,我的服务器需要一个身份验证令牌才能出现在HTTP连接的HTTP标头中,该标头将升级到websocket。由于ngxs documentation的websocket示例仅解释了如何通过websocket连接,发送和接收消息,我正在寻找一个示例,如何为此Web套接字连接编写拦截器以附加自定义HTTP头。 / p>

1 个答案:

答案 0 :(得分:1)

遇到相同的问题,但是以下变通方法可以通过另一种方式(使用票证)来验证用户连接:

  1. 请求Web套接字连接票据(在JWT中使用class Person { public int Id { get; set; } } class Employee : Person { } // code somewhere else Employee employee = new Employee { Id = 10 }; 标头)。
  2. 调度Authorization操作,其选项包括您的网络套接字URL和作为查询参数的票据。
  3. 在接受连接握手之前(在您的服务器中)验证票证。