2009-06-17 5 views
0

J'essaie d'utiliser l'API de données Google Analytics pour obtenir des données filtrées par pays. J'utilise la bibliothèque .NET à http://google-gdata.googlecode.com/svn/trunk/ qui fonctionne à merveille aussi longtemps que je ne cherche pas à filtrer par pays.Filtrage par pays en utilisant Google Analytics Data API

Cela fonctionne très 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 de 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?

+0

Quelle est l'erreur quand vous codez le == à% 3D% 3D? (Pour moi, c'est le seul problème ici) –

Répondre

0

j'ai finalement trouvé le ResponseString et a vu ce message:

"Illegal combination of dimensions and metrics" 

Apparemment, j'ai essayé d'obtenir des données qui ne sont pas disponibles. Cela est logique quand on regarde la Query Validation Chart dans la documentation.

Questions connexes