google anaylitics访客计数器无法使用API​​返回

时间:2015-05-28 10:50:53

标签: google-analytics-api asp.net-4.0

我在处理程序中编写了以下代码以获取asp.net网站中的访问者计数器

using Google.Analytics;
using Google.GData.Analytics; //v2.2.0.0

public class Visitor : IHttpHandler {

public void ProcessRequest (HttpContext context) {
    AccountQuery feedQuery = new AccountQuery();
    AnalyticsService service = new AnalyticsService("kiranaAnalytic");

    service.setUserCredentials("myemailid@gmail.com", "mypassword");

    DataQuery pageViewQuery = new DataQuery("https://www.google.com/analytics/feeds/data");//https://www.google.com/analytics/feeds/data
    pageViewQuery.Ids = "ga:xxxx";
    pageViewQuery.Metrics = "ga:visitors";
    pageViewQuery.GAStartDate = "2014-05-01";//DateTime.Now.AddMonths(-1).ToString("yyyy-MM-dd");
    pageViewQuery.GAEndDate = DateTime.Now.ToString("yyyy-MM-dd");
    DataEntry pvEntry = service.Query(pageViewQuery).Entries[0] as DataEntry;

    context.Response.ContentType = "text/plain";
    context.Response.Write(pvEntry.Metrics[0].Value);
}

public bool IsReusable {
    get {
        return false;
    }
}
}

直到周日才工作正常。但我突然开始得到以下错误。 “Google.GData.Client.GDataRequestException:执行身份验证请求已返回”

有没有人对此有所了解或谷歌做了一些改变?

2 个答案:

答案 0 :(得分:1)

这表示您的身份验证有问题。您似乎正在使用名为客户端登录的登录名和密码。

客户端登录已在April 20 2015停止/关闭,我怀疑周二已关闭Google Analytics。您无法再使用Google AnalyticsAPI进行客户端登录,您需要切换到Oauth2或服务帐户。我建议使用Google .net client library

教程Google Analytics API C# Oauth2

答案 1 :(得分:0)

Google关闭旧帐户密码身份验证。您需要移动代码才能使用Oauth。