VB_*_*VB_ 2 javascript java java-ee websocket single-page-application
我有一个简单的单页应用程序,使用jetty websockets进行服务器和客户端之间的通信.
问题:每次重新加载页面时,我的websocket连接都被禁用,并且new被初始化.问题是用户应该重新刷新每个页面刷新.
问题: 如何在页面刷新时消除重新登录的需要?
编辑:面临下一个问题:如何决定何时删除会话?我在服务器端有一个对等对象,除了websocket会话容器之外别无其他.Peer在onClose方法上被删除,而方法又在删除客户端websocket上调用.这里的问题来了:当用户按F5 - >客户端websocket被破坏 - >服务器删除相应的websocket - >客户端尝试重新加载页面并检查是否有任何会话和找不到.另一方面,我根本不能停止删除同伴(会话).
问题:如何告诉服务器何时删除我的同行?
为了消除在每个新连接建立时验证WebSocket连接的需要,您可以使用cookie.
验证在第一次的WebSocket连接,设置cookie的网页套接字连接上,并且一旦有新连接重新检查的cookie.
这需要一个允许在WebSocket连接上读取和设置cookie的WebSocket服务器.
如果WebSocket连接的源自与包含打开WebSocket连接的JavaScript的HTML页面相同的源,则还可以使用基于HTML的"普通"表单登录加cookie过程: