Erreur 400 avec le tracking sur une app mobile Cordova

Bonjour à tous,

Un problème est apparu récemment avec le tracking de notre application dans sa version mobile générée avec Cordova : alors que le tracking Matomo continue à fonctionner depuis la version web de l’application, le serveur Matomo renvoie maintenant une erreur 400 pour toutes les requêtes envoyées depuis les versions mobile (Android et iOS).

  • Le tracking continue à fonctionner normalement depuis la version web (accessible quand on lance l’app en local ou via des iFrames utilisées par quelques clients).
  • L’apparition du problème semble coïncider avec une release de l’app qui intègre l’ajout d’IndexedDB pour le stockage de nos données, mais je ne vois pas de lien avec le problème de tracking.
  • L’app elle-même est codée en VueJS, et nous utilisons le package vue-matomo qui semble être à jour, version 4.2.0 (la dernière).
  • Les logs JS effectués depuis la version webview montrent que le serveur Matomo renvoie systématiquement une erreur 400 quand une version webview envoie une requête. Cela me fait penser à un problème CORS / Content Security Policy, mais je ne trouve rien dans la doc/les réglages de Matomo par rapport à ça.

Toute piste serait la bienvenue, merci !

Bonjour,

Avez-vous sous la main les logs d’erreur Apache ou Matomo ? Elles donnent souvent plein d’info très intéressantes !

Avez vous réussi à résoudre votre problème ?
Pour ma part, avec une app Cordova, j’utilise les requêtes HTTP via l’API Matomo.

1 Like

Oui, c’est résolu, merci ! Le problème était dû au passage à Matomo 5 qui ne trace plus par défaut le protocole file:// utilisé par les apps Cordova. Il faut à présent activer le tracking au lancement de l’app:
https://fr.matomo.org/faq/how-to/enable-file-protocol-tracking/

1 Like