我正在尝试使用Google AnalyticsData API来按国家/地区过滤数据。我在http://google-gdata.googlecode.com/svn/trunk/使用.NET库,只要我不尝试按国家/地区进行过滤,它就可以正常工作。
这很好用:
const string dataFeedUrl = "https://www.google.com/analytics/feeds/data";
var query = new DataQuery(dataFeedUrl);
query.Ids = this.ProfileID;
query.GAStartDate = this.FromDate;
query.GAEndDate = this.ToDate;
query.Metrics = "ga:newVisits,ga:visitors";
DataFeed dataFeed = this.AnalyticsService.Query(query);
但是如果我在Query调用之前添加它:
query.Filters = string.Format("ga:country=={0}", this.Country);
query.Dimensions = "ga:country";
...我得到了这个例外:
System.Exception {Google.GData.Client.GDataRequestException}
"Execution of request failed: https://www.google.com/analytics/feeds/data?dimensions=ga:country&end-date=2009-06-17&filters=ga:country==Denmark&ids=ga:xxx&metrics=ga:newVisits,ga:visitors&start-date=2009-05-18"
我尝试手动转义==%3D%3D但这没有用。
有什么想法吗?
答案 0 :(得分:0)
我终于找到了ResponseString并看到了这条消息:
"Illegal combination of dimensions and metrics"
显然,我一直试图获取无法获得的数据。在查看文档中的Query Validation Chart时,这确实有意义。