Rxjs Websocket:如何添加标头
Posted
技术标签:
【中文标题】Rxjs Websocket:如何添加标头【英文标题】:Rxjs Websocket : how to add headers 【发布时间】:2020-01-29 13:37:38 【问题描述】:我正在使用 rxjs 在我的 Angular 应用程序中使用 websocket。
我正在实例化它:我想添加一些标题:
myheader : "abcde"
我是怎么做到的?
这是我的代码:
import BehaviorSubject, of, Subscription, Subject, Observable, NextObserver from 'rxjs';
@Injectable()
export class WebsocketService
openConnection()
this.close();
const url = 'wss://echo.websocket.org';
this.connection$ = webSocket(
url,
openObserver: this.openObserver,
closeObserver: this.closeObserver,
);
this.getmsg();
建议?
【问题讨论】:
我正在使用@stomp/ng2-stompjs
来帮助我进行 websocket 连接。 rxStompService
有一个configure
,它允许connectHeaders
。我认为普通的 WebSocket API 不允许使用标头。不过,您可以将一些查询参数传递给 url...wss://echo.websocket.org?firstvar=test
这能回答你的问题吗? HTTP headers in Websockets client API
【参考方案1】:
在创建 WebSocket
时,无论是使用 RxJS 还是使用纯 javascript / DOM API,都无法传递额外的标头。
您可以使用 Query Params 或 Cookies 向您的服务器提供更多详细信息。
【讨论】:
以上是关于Rxjs Websocket:如何添加标头的主要内容,如果未能解决你的问题,请参考以下文章
使用Cro :: WebSocket :: Client添加授权或标头?
如何在 Jasmine 中模拟 rxjs webSocket?
在 Angular 和 rxjs 中重新连接 websocket?