[英]How to measure visiting time of a user
我喜歡衡量用戶在我的webapp的特定頁面上花費的時間。 首先,我考慮在瀏覽器中捕獲onunload / onbeforeunload事件,並通過XMLHttpRequest通知服務器用戶現在要離開:
<body onunload="userLeaves('/url/to/current/page',xxx);" ...> ... </body>
其中xxx是呈現頁面時的初始tiemstamp。
不幸的是,這個解決方案並不適用於所有瀏覽器(例如Opera)。 所以我的第二個想法是不斷ping服務器。 要計算訪問時間,有人必須花費最后一次ping時間並從初始時間戳中減去它。 但我不認為這是一個很好的解決方案,尤其是當用戶打開3或5個標簽並且每個標簽每500毫秒觸發事件時......
你會如何衡量訪問時間? 有人有更好的想法來獲得在一個特定頁面上花費的時間嗎?
Google Analytics等工具使用的方法是,訪問時間的衡量標准是用戶點擊第一頁到達單個“訪問”中最后一頁的時間。 單次訪問被定義為一個用戶(cookie)的一系列頁面查看,其中每次訪問都足夠接近上一次訪問。 但我不知道這個限制是什么。
根據我的經驗,這些帶卸載事件等的技巧接近於侵入性,用戶不欣賞它們。 因此,它們與更加被動的方法相比幾乎沒有任何價值,比如構建一個來自cookie和頁面查看數據的訪問。
我建議幾乎所有的網絡分析包都取決於您的一些業務目標。
[還有其他一些,一些更適合廣告網絡報告......]
為什么不看看Google Analytics,標准跟蹤會為您捕獲這些統計信息。
這取決於你允許多少錯誤。 如果錯誤大約為幾十分鍾,則只需要訪問日志,並設置最后一頁的會話超時間隔。 如果只允許幾百毫秒,則需要ping。 如果錯誤介於兩者之間,您仍然需要ping,盡管速率較低; 或接受關閉瀏覽器的用戶不會觸發onunload事件的事實。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.