6

我有一个谷歌分析的网络应用程序,例如当用户登录时调用事件:

 _gaq.push(['_trackEvent', 'webapp', 'account', 'login', , false]);

我有与桌面应用程序相同的网络应用程序(在我的客户端桌面上)。如果用户确实从桌面应用程序登录,它会向我的网络应用程序发送请求,并带有参数以告知已进行登录。所以假设当用户登录桌面应用程序时,它正在向“http://mywebapp.com/?UserID=[userid]&op=login”发送请求,webapp 保存数据,我希望它调用谷歌分析和,

_gaq.push(['_trackEvent', 'desktopapp', 'account', 'login', , false]);

可能吗 ?我的 webapp 是 MVC 4 C#。

4

1 回答 1

7

绝对没错。您的服务器只需要为 Google Analytics 形成一个正确的 URL 字符串,例如:

http://www.google-analytics.com/__utm.gif?utmwv=4.4sj&utmn=2013699399&utmhn=localhost&utmr=-&utmp=%2Fwebapp&utmac=XX-999999-99&utmcc=__utma%3D999.999.999.999.999.1%3B&utmvid=0x10ccd599999999&utmip=

(您需要检查一些请求参数并将其更改为合理的参数 -在此处阅读更多参数)。

然后从您的服务器代码中打开 URL。在 Java 中,你可以这样做:

URL url = new URL(urlAsString);
URLConnection connection = url.openConnection();
connection.setUseCaches(false);

connection.addRequestProperty("User-Agent", "MyBrowser/1.0 MyEngine/1.0");
connection.addRequestProperty("Accept-Language", "en-US");

connection.getContent();

这是一个类似的问题:如何从代码中触发 Google Analytics?对于 C#。

2014 年 7 月 18 日更新

随着 Universal Analytics 的推出,现在更容易进行服务器端分析集成 - 有关详细信息,请参阅 SA 上的以下帖子:有没有办法通过服务器端 API 将事件发布到 Google Analytics?

于 2013-05-31T11:40:13.793 回答