Question

Bonjour! J'ai cherché StackOverflow et le web pendant environ 24 heures, et je ne l'ai pas trouvé une réponse encore. J'espère que je manque quelque chose de simple qu'un utilisateur API plus expérimenté peut signaler pour moi.

Je l'API Google interrogation Analytics à l'aide de leur bibliothèque .NET. Cette demande fonctionne:

https://www.google.com/analytics/feeds/data?start-index=1&max-results=500&dimensions=ga:date&end-date=2011-01-06&ids=ga:________&metrics=ga:visitors,ga:visits&start-date=2011-01-06

... mais je voudrais filtrer les résultats. J'ai essayé un seul filtre très simple qui ne nécessite pas l'encodage URL:

filters=ga:city!@Minsk

Tout ce que je get est l'erreur exaspérante vague « 400 mauvaise demande ». Je reçois le même résultat en utilisant l'opérateur égal:

DataQuery  query = new DataQuery(URL);
...
query.Filters = "ga:city==Minsk"

Même chose si j'encoder les signes égal en% 3D. Cela se traduit en « ga: ville% 253D% 253DMinsk », selon le message d'erreur. J'ai essayé une seule citation « Minsk », et double citant; pas de chance.

Je suis perplexe. Des idées? Merci!

Était-ce utile?

La solution

trouvé. Il se avère que les filtres doivent être « compatibles » avec les dimensions et les mesures effectivement exprimées dans une requête. Dropping ga: les visiteurs m'a permis d'appliquer la plupart des filtres dont je avais besoin, bien que la combinaison de ga: pagePath et ga: campagne n'est pas permis avec ga: visites ... pour une raison quelconque. Voici les détails, mais attention:. Vous pouvez finir par loucher

http://code.google.com/apis/analytics/ docs / gdata / gdataReferenceValidCombos.html

Oh, et en utilisant la bibliothèque .NET vous ne avez pas besoin de coder le signe égal ou espaces dans vos filtres. J'ai structuré mes filtres comme ceci:

private static readonly string  Filter = string.Join
  (
  ";", new string[]
    {
    "ga:city!=Simi Valley",  // URL encoding is handled for you
    "ga:pagePath!@/splash",
    "ga:pagePath!@static_test",
    "ga:networkLocation!@spring",
    "ga:networkLocation!@equinix asia pacific pte ltd"
    // ...
    }
  );

Espérons que cela aide quelqu'un!

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