DiagnosticSDK

Fonctionnement

Observer plutôt qu’intercepter.

La plupart des débogueurs réseau iOS interceptent chaque requête avec un URLProtocol personnalisé et la renvoient depuis leur propre URLSession interne. La configuration de session de l’app se perd en route : son délégué de SSL pinning n’est jamais appelé, les certificats mTLS ne sont pas présentés, et les en-têtes, cookies, cache et réglages de proxy de la session sont abandonnés.

DiagnosticSDK observe à la place :

  • il relaie le URLSessionDelegate de votre app en transmettant chaque appel sans le modifier ;
  • il enveloppe les completion handlers des tâches et leurs variantes async pour lire le résultat ;
  • la requête ne quitte jamais votre session.

Replay

Le replay utilise un URLProtocol uniquement pendant un replay et uniquement pour les requêtes qui correspondent à un enregistrement. Une requête correspondante est servie depuis l’enregistrement et ne touche jamais le réseau. Une requête sans correspondance n’est pas interceptée : iOS la traite nativement.

Sur cette page