0

J'ai un code C# communiquant avec Analytics API v2.4. Cela a fonctionné pendant près de cinq ans, mais soudainement Analytics renvoie un code XML mal formé, en commençant par le caractère 0x1F.L'API Analytics 2.4 renvoie un code XML non valide avec 0x1F

Méthode XmlReader.MoveToContent() lance System.Xml.XmlException avec le message:

' ', hexadecimal value 0x1F, is an invalid character. Line 1, position 1. 

Ce fut d'abord remarqué le 8 août 14:30 UTC. Quatre heures plus tôt, ce n'était pas un problème.

Je sais que c'est plus un rapport de bogue qu'une question encore:

  • Quelqu'un at-il remarqué cela?
  • Que faites-vous contre cela? En C#, vous pouvez contourner ce problème en définissant ReaderSettings.CheckCharacters sur false, mais je ne sais pas quels autres effets secondaires cela peut provoquer.

Merci!

Répondre

0

Je suppose que la réponse est compressée par gzip (l'en-tête de gzip commence par 1f 8b) et vous devrez le décompresser maintenant.

Je ne sais pas ce qui a changé, votre code, vos bibliothèques ou l'API analytique. Désolé, je ne suis pas un expert C# et je ne peux pas vous aider avec le code.

voir https://en.wikipedia.org/wiki/Gzip#File_format

+0

C'était l'indice dans la bonne direction. Mon code a ajouté un en-tête demandant GZIP mais ne pouvait pas gérer les réponses GZIPped. Cela n'a jamais été un problème car Analytics API 2.4 a ignoré cette demande d'encodage pendant de nombreuses années. Apparemment, cela a changé récemment. On ne s'attend pas à ce que Google ignore de telles demandes mais il a été remarqué avant - voir [ce commentaire] (https://stackoverflow.com/questions/2815721/net-is-it-possible-to-get-httpwebrequest-to- automatiquement-decompress-gzipd-re # comment31685565_2815823) – Zweitze