【问题标题】:I need to capture the amount of time a user spends on a page in classic ASP我需要捕获用户在经典 ASP 页面上花费的时间
【发布时间】:2021-05-18 01:09:34
【问题描述】:

我需要捕获用户在 ASP 经典 (.asp) 中的页面上花费的总时间。这与分析页面以获取页面逻辑执行时间的时间无关。我只对捕获每个用户在网站上,特别是在某个页面上花费的时间感兴趣。如果客户端出现意外断开连接,也需要捕获经过的时间。

【问题讨论】:

  • 最好的办法是集成一个分析包,如 Google Analytics。您将很难在服务器端执行此操作,尤其是检测客户端断开连接。
  • 欢迎来到 SO。我可能会在window.onloadwindow.onunload 期间使用客户端JavaScript 来捕获(轮询)服务器端REST API,以及为特定时间分辨率(例如,每分钟)设置的轮询计时器。如果您的服务器端 REST API 在该计时器分辨率内​​未收到响应,那么可以肯定地说客户端已断开连接或导航离开您的站点。否则,您可以使用 IIS 日志在 .asp 日志条目之间进行粗略估计。
  • 谢谢!我需要该页面在断开连接时记录数据库中经过的时间 - 这就是为什么查看 IIS 日志或使用谷歌分析之类的东西在这里并不适用。我将研究 window.onload 和 window.onunload。这可能会奏效。感谢您的建议!
  • Google Analytics 完全无法满足您的需求,只会减慢您网页的下载速度。当站点使用 Access 数据库和 global.asa 时,可以获得当前活动用户的列表。但是今天访问是一个问题。但是它是可编程的。

标签: asp-classic


【解决方案1】:

判断客户端是否断开连接有一个 ASP 方法

response.IsClientConnected

您的代码必须不时调用该方法以确保它们已连接....通常在开始大型进程之前使用它以确保用户仍然存在。

我从未使用过它,也不知道它可能有多准确。 Javascript 仍然是您捕获浏览器关闭时的最佳选择,但如果用户因电源故障或网络状况断开连接,我认为没有任何工具能够 100% 帮助您。

【讨论】:

    猜你喜欢
    • 2011-07-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-29
    • 1970-01-01
    • 2017-04-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多