在Angular中刷新页面。 Socket.io问题

时间:2020-06-07 14:07:08

标签: angular socket.io rxjs

我的聊天网络应用程序将RxJS与socket.io一起使用;我在服务构造函数中创建socket.io客户端具有“持久”套接字;一切正常,但是如果用户刷新(F5 / Cmd-R)应用程序,则会重新创建客户端套接字,而旧客户端套接字将被销毁。 有办法避免这种情况,保持相同的socket.io客户端吗?

1 个答案:

答案 0 :(得分:2)

无论何时刷新页面,该页面消耗的所有内存都会被删除,因此上下文会丢失,所有对象实例也会丢失 这就是为什么无法在刷新时持久保存套接字客户端实例的原因。 如果您想以某种方式在浏览器会话中跟踪同一用户,则可以在首次将其保留到sessionStorage时生成一些唯一ID 然后将其传递给套接字初始化上的query parameter。通过该ID,您将能够在浏览器会话中识别该用户

相关问题