我是Web开发的新手,正在寻找解决方法。
我有以下情况:
用户登录到Web应用程序。他/她将在其控制台上看到四个不同的模块链接。
当userA单击其中一个链接时,将打开一个新的TAB,并允许userA在该模块中进行更改/工作/。当userA在该特定模块上工作时,它将检出到UserA,所有其他用户将看到UserA正在其控制台上访问该模块,并且其他所有用户均无法访问。
现在,当用户关闭/注销模块(选项卡)时,应将所有用户控制台中模块的状态更改为“可访问”。
我选择MEAN堆栈来实现此应用程序。
题:
如何处理情况:
当用户关闭/注销模块(选项卡)时,应将所有用户控制台中模块的状态更改为“可访问”。
如何跟踪打开的选项卡?
最佳答案
我觉得最合适的解决方案是使用套接字。 (您可以尝试Socket.IO,但还有其他用于websocket的库)
造成这种情况的主要原因是,我们希望跟踪断开连接事件。这需要从服务器/客户端进行某种轮询。您想对套接字进行多少操作完全取决于您;可以将可访问模块的状态保存在地图中,并在获取可访问模块的GET时更新它们。同样,您也可以将套接字与“ connect”事件一起使用,从而可以进行实时更新。
当用户然后关闭模块时,将发送一个断开连接事件,以便您可以将其更改为可访问。
关于node.js - 如何跟踪从主页打开的选项卡?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32677408/