我正在尝试构建一个rails应用程序并尝试查看用户在线的内容。我知道如果用户点击我的应用程序,如何实现该方法来显示在线用户,但我们假设我的应用程序只有1页,因此没有要点击的链接。如何在不跟随用户点击的情况下在线跟踪用户?此外,如果用户空闲15分钟,我将需要将状态更新为空闲而不是在线,如果用户关闭浏览器或导航到另一个页面,状态将变为离线。
任何帮助将不胜感激。感谢
答案 0 :(得分:1)
大概他们会以某种方式与页面交互(也许是ajax?)所以你需要检测这些交互并使用它们来确定用户是否空闲。您可以使用javascript的onbeforeunload来确定他们何时离开页面。
答案 1 :(得分:0)
我建议将 AJAX ping 发送到您的服务器端,如:
$.get( '/user_activity/ping' );
您可以使用JS Timers自动执行此操作,也可以在用户与页面进行交互时明确地执行此操作。