Question

J'essaie d'utiliser l'API de données Google Analytics pour filtrer les données par pays. J'utilise la bibliothèque .NET à l'adresse http://google-gdata.googlecode.com/svn. / trunk / qui fonctionne à merveille tant que je n'essaye pas de filtrer par pays.

Cela fonctionne bien:

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);

Mais si j'ajoute ceci avant l'appel à la requête:

query.Filters = string.Format("ga:country=={0}", this.Country);
query.Dimensions = "ga:country";

... je reçois cette exception:

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"

J'ai essayé d'échapper manuellement == à% 3D% 3D, mais cela n'a pas aidé.

Des idées?

Était-ce utile?

La solution

J'ai finalement trouvé le ResponseString et vu le message suivant:

"Illegal combination of dimensions and metrics"

Apparemment, j'ai essayé d'obtenir des données qui ne sont pas disponibles. Cela a du sens lorsque vous consultez le Tableau de validation de la requête dans la documentation.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top