如何跟踪网站上的时间

Gan*_*war 3 javascript ruby ruby-on-rails time-tracking coffeescript

在我的rails应用程序中,我想跟踪单个用户在网站上花费的总时间.我做过研究,但无法得到完美的解决方案.
这怎么可能.

coc*_*cco 5

这样的事情?

var time,timeSite;
window.onload=function(){
 time=new Date();
}


window.onbeforeunload=function(){
 timeSite=new Date()-time;
 window.localStorage['timeSite']=timeSite;
 //store it with whatever serverside language.
}
Run Code Online (Sandbox Code Playgroud)

如果你想要更多的添加 window.onblur

这段代码有效..也是ajax会很有效...

在极端解决方案中将它存储在localstorage中(如示例中所示),然后在下次登录时执行ajax.

这项工作为您提供了几秒钟的准确时间......

如果你想要大约时间,对于没有localstorage的用户每5分钟添加一次setTimeout

并且如果ajax和localstorage不起作用,则更新时间.


这是一个在onbeforeunload函数内部进行测试的ajax调用.

railsurl无论你需要什么,都要改变.

var x=new XMLHttpRequest;x.open('get','railsurl?time='+timeSite);x.send();
Run Code Online (Sandbox Code Playgroud)

正如@YiğitcanUçum所说..

为什么不使用服务器端会话来开始和结束网站上的时间?