6

我正在尝试直接登录 Google Analytics。解释一下,我有一个帐户系统,我希望当您选择一个 ASP.NET 按钮时,它会通过静默登录将您重定向到指定的 Google Analytics 帐户。

我已经仔细研究了 Dave Cullen 的 ASP.NET 库,虽然我可以使用 HttpWebRequest“静默”登录,但我无法将用户留在该页面上。我也有各种带有“无法发送具有这种动词类型的内容主体”错误的戏剧。

这是我目前基于 Dave 库的非常基本的代码;

 string token = GoogleAnalytics.getSessionTokenClientLogin(username, password);
    NameValueCollection profiles = GoogleAnalytics.getAccountInfo(token, GoogleAnalytics.mode.ClientLogin);

    HttpWebRequest theRequest = (HttpWebRequest)WebRequest.Create("https://www.google.com/analytics/settings/?et=reset&hl=en_uk&et=reset&hl=en-US&et=reset&hl=en-GB");
    theRequest.Headers.Add("Authorization: GoogleLogin auth=" + token);
    Stream responseBody = theRequest.GetRequestStream();
    Encoding encode = System.Text.Encoding.GetEncoding("utf-8");
    StreamReader readStream = new StreamReader(responseBody, encode);

因此,我的问题是;1.这个可以吗?2.这甚至是正确的方法吗?

欢迎咨询!

4

3 回答 3

4

我不确定自动登录 Google Analytics 的总体目标是什么,但如果只是为了显示 Google Analytics 中的一些数据,您可能需要考虑使用 Google Data API 来提取您的信息想要从谷歌分析。您可以创建一个他们真正需要查看的简单仪表板,而无需访问 Google Analytics 中的其他内容,通过登录他们,您很可能让他们访问他们不需要的数据和工具?

如果它不符合您的需求,请查看 API,可能会提供有关此功能的总体目标的更多信息。

http://code.google.com/apis/analytics/

于 2009-08-04T12:38:04.820 回答
0

除非您愿意实施代理服务器来代理谷歌分析,否则我认为您无法做到这一点,因为您无法将 cookie 分配给另一个域的客户端。

于 2009-07-28T16:42:50.713 回答
0

如果身份验证令牌存储在 cookie 中,您可以将 cookie 添加到您的 ASP.NET 响应中 - 然后只需设置 src(无内联)将 google 页面托管在 IFRAME 中。该 IFRAME 将从您的父页面“继承”cookie,并且该页面将认为它已通过身份验证。

于 2009-07-31T05:40:37.130 回答