在我当前的项目中,我在另一台服务器上安装了前端(单页应用程序)而不是后端。我们决定使用 Spring Session 来HeaderHttpSessionStrategy
进行基于令牌的身份验证。我们要添加的最后一个功能是具有@SendToUser
功能的 websockets,并且出现了一个楼梯。
由于安全原因,使用当前版本的 SockJS 无法将令牌标头添加到握手步骤。我尝试了一些通过 Stomp 标头发送令牌的方法,但没有成功。
我必须添加一个事实,即CookieHttpSessionStrategy
(并且当前端由同一服务器提供时)没有问题,因为在握手步骤中浏览器会自动注入带有会话 ID 的 cookie。
是否有另一种方法可以在服务器端对用户进行身份验证并将其绑定到打开的 websocket?