5

我对javascript相当陌生,我知道基础知识。我希望构建自己的(从头开始)java 脚本库,就像 google analytics.js 一样,它将跟踪网站上的用户行为。基本上我正在寻找收集数据,例如

  1. 点击数据
  2. 停留时间
  3. 页面点击量等。

我花了很多时间试图找到网站/教程让我开始做这件事,但我一直在使用 google analytics.js 或一些私人工具。

我在找什么:

  1. 有什么好的起点/资源/网站可以帮助我构建这个 js 库
  2. 是否有端到端系统架构的参考,包括后端?
  3. 我可以直接使用任何开源库吗?

我已经研究过的一些事情 超明 构建您自己的分析工具 Splunk BYO 分析

4

1 回答 1

8

在最基本的情况下,这样的应用程序的架构只需要一个客户端、服务器和数据库。

您可以使用基本的 javascript 函数在前端记录特定的用户操作,然后将它们推送到您的服务器。要识别您的用户,您可以设置cookie具有唯一 ID 的 a。然后,每次您向服务器发送数据时,您都会收到特定的用户请求,以便跟踪他们的操作。(不过,请首先注意隐私法)。

对于页面点击,只需在每次有人打开您的网站时向服务器发送响应 - 所以在您的 Javascript 加载后立即调用此函数。在服务器上,发送请求以增加数据库中的适当值。

对于用户停留时间,编写一个函数来记录用户第一次访问您的网站的日期,然后计算他们在那里停留的时间。每隔一段时间将您的数据推送到服务器,并通过将新花费的时间添加到当前花费的时间来保存对用户记录的更新。您还可以观察用户何时即将退出站点,然后以这种方式一次性发送所有数据——尽管这种方法更脆弱。

对于点击和悬停,在您的链接或您想要跟踪的任何元素上设置onclick和事件处理程序。mouseover然后推送他们单击的链接的 url 或您想要的任何数据 - 例如“在站点 200 秒后单击导航栏并悬停在徽标上后”。

如果您需要有关特定技术的建议,那么我建议您将 Node.js 用于您的服务器端代码,并将 MongoDB 用于您的数据库。有很多关于如何一起使用这些技术的教程。查找 javascript 事件以获取您可以在前端观察的不同事物的列表。

这些是您需要的构建块。现在您只需要定义您想要的数据并使用这些技术来获取它。

于 2020-06-25T01:57:04.370 回答