【发布时间】:2016-03-14 18:23:52
【问题描述】:
我的情况是有人浏览我们的网站,我正在使用 javascript 谷歌分析和 hotjar 来跟踪我的用户。
-
我像这样跟踪用户:
ga('send', 'event', '/RegisterButton', '', ''); hotjar('发送', '事件');...
但是,现在这些人在服务器端发生了一些事件和数据,我也想跟踪这些事件和数据(在分析中)。
例如,我想知道一个人是否多次上传文件。
我该怎么做?
一种方法,就是这样做(这是一个伪代码):
function clickOnUploadButton()
{
var userDetails = ajax_get_user_details(function(data) {
if (data.numOfClicksOnUploadButton > 1)
{
ga('send', 'event', '/UploadButtonMoreThanOnce', '', '');
hotjar('send', '/UploadButtonMoreThanOnce');
}
else
{
ga('send', 'event', '/UploadButtonFirstTime', '', '');
hotjar('send', '/UploadButtonFirstTime');
}
ajax_activate_my_asp_controller();
});
}
我真的不想要这个解决方案。 因为那时,我将数据发送到客户端。我的网页中通常不需要这些数据。而这只会使 javascript 代码复杂化。
我想要一个解决方案,以便我可以将这些数据从服务器端直接发送到谷歌分析。 像这样:
在javascript中(伪代码):
function clickOnUploadButton() {
... do stuff ...
ajax_activate_my_ASP_controller();
}
在我的服务器端控制器中(这是一个伪代码):
void MyController()
{
string googleAnalyticsSessionID = Request["GoogleAnalyticsSessionID"];
string hotjarSessionID = Request["HotJarID"];
var user = GetMyUser();
if (user.numOfClicksOnUploadButton > 1)
{
new GoogleAnalyticsClass().SendEvent(googleAnalyticsSessionID , "button", "UploadButtonMoreThanOnce");
new HotJar().SendEvent(hotjarSessionID, "button" "UploadButtonMoreThanOnce");
}
else
{
new GoogleAnalyticsClass().SendEvent(googleAnalyticsSessionID , "button", "UploadButtonFirstTime");
new HotJar().SendEvent(hotjarSessionID, "button" "UploadButtonFirstTime");
}
}
谢谢。
编辑:我也需要这个用于 hotjar(类似于谷歌分析的服务)......
【问题讨论】:
-
对不起朋友,你的问题对我来说没有任何意义,请更新上下文并详细说明。
-
你想知道什么细节?
-
Google Analytics 通常旨在从客户端运行。向 Google 发送数据的是客户端,而不是您。如果你从服务器做,你怎么能建立正确的用户上下文?您需要从客户端找到一些方法。
标签: javascript c# asp.net-mvc google-analytics analytics