在办公室里有一个关于浏览器发送握手头的能力的争论,这是建立websocket连接的一部分。
The websocket spec表明标题是可行的。而且,事实上,在我的非浏览器客户端代码中,我设置了握手标头,并且它们在没有和发出的情况下被接收。
公开辩论是:使用javascript插入标头的网络浏览器是否可以成为握手的一部分?该规范似乎表明没有任何反对意见,但没有人能找到客户端文档说明如何。
有很多相互矛盾的信息。这显然是可能的,因为我能够在没有问题的情况下在Java中完成它。但对于Javascript,没有人看到如何。这是浏览器限制吗?
澄清我的问题与其他人的不同之处:是否无法对默认的javascript库进行限制?网络浏览器或规格?看起来它只是一个库限制
答案 0 :(得分:0)
我担心Web浏览器中的WebSocket API不允许设置自定义标头。仍然,浏览器设置cookie,如果有的话。
答案 1 :(得分:0)
问题是在浏览器中创建webSocket连接的标准API不提供任何设置自定义标头的机制。因此,它是webSocket浏览器API的限制。
您可以控制发送的URL,包括查询参数和随请求一起发送的cookie,这样您就可以使用路径,查询参数或cookie通过连接请求发送其他信息。
WebSocket WebSocket(
in DOMString url,
in optional DOMString protocols
);