SpringBoot 整合 netty-socketio 请求头问题

SpringBoot 整合 netty-socketio 请求头问题,第1张

SpringBoot 整合 netty-socketio 的过程中,后端想通过前端发送的 websocket 请求头中携带的 token 来决定是否允许连接。
前端使用的是 socket.io ,查看了它的官网,发现:

意思是说:在浏览器环境下,extraHeaders 选项在请求头中添加自定义的字段是会被忽略的,因为浏览器的 WebSocket API 不支持,在 node.js 和 react 中是可以的。
我就想,既然自定义的字段会被忽略,那我将 token 放在 cookie 中不就可以了:

但是,没用,后端获取到的 cookie 没有 token 信息。
在 github 上 socketIo 项目中发现:

意思是:
如果你仅仅使用 websockets ,目前没有好的替代方法在请求头中携带自定义的字段,如果用 HTTP 长轮询可以。
结论就是: 前端的 socketIo 框架不支持在 websocket 的请求头中携带自定义的字段,所以,我将 token 信息放在 websocket 请求的 url 参数中:

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/741977.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-28
下一篇 2022-04-28

发表评论

登录后才能评论

评论列表(0条)

保存