3G avec Orange et SFR
denis_13
Membre
Bonjour à tous,
je viens de corriger un bug sur une série d'applications qui plantaient en 3G (pas en Wifi), sur les réseau Orange et SFR. Je ne m'en étais pas aperçu car j'utilise B&Y, j'ai du emprunter un tel pour débuter...
Simplement j'utilisais (naà¯vement) la méthode -[NSURLResponse expectedContentLength]sans en vérifier le résultat pour initialiser une NSMutableData. Tout à très bien fonctionné pendant quelques années, mais maintenant au lieu de me renvoyer la valeur je reçois -1 (en 3G avec Orange et SFR..., sinon, cela continue à fonctionner).
Je n'aurais évidement pas du me baser sur une telle information, sous le simple prétexte qu'elle était disponible (erreur de jeunesse), mais c'est un autre sujet... Mais si vous tombez sur le même problème, j'espère que cela vous économisera quelques cheveux ;-)
Bonne journée.
Denis
je viens de corriger un bug sur une série d'applications qui plantaient en 3G (pas en Wifi), sur les réseau Orange et SFR. Je ne m'en étais pas aperçu car j'utilise B&Y, j'ai du emprunter un tel pour débuter...
Simplement j'utilisais (naà¯vement) la méthode -[NSURLResponse expectedContentLength]sans en vérifier le résultat pour initialiser une NSMutableData. Tout à très bien fonctionné pendant quelques années, mais maintenant au lieu de me renvoyer la valeur je reçois -1 (en 3G avec Orange et SFR..., sinon, cela continue à fonctionner).
Je n'aurais évidement pas du me baser sur une telle information, sous le simple prétexte qu'elle était disponible (erreur de jeunesse), mais c'est un autre sujet... Mais si vous tombez sur le même problème, j'espère que cela vous économisera quelques cheveux ;-)
Bonne journée.
Denis
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
J'ai eu le cas une fois avec SFR : quand on demandait à notre WebService de nous retourner un JSON, si on avait un problème sur le serveur ou quoi, normalement au lieu de nous retourner le JSON avec un code 200 et on contentType "text/json", en cas d'erreur serveur ça nous renvoie un code d'erreur 500, qu'on peut donc détecter et afficher à l'utilisateur qu'il y a eu un problème réseau ou serveur.
Bah sauf quand on passait par un réseau SFR, car eux nous renvoyaient dans ce cas une page HTML contenant le message d'erreur "Server Internal Error", mais avec un code 200. Donc dans notre code on voyait un code 200 on se disait "c'est bon on a reçu une réponse correcte", on l'interprétait comme si c'était du JSON, et forcément vu que c'était leur HTML bidon à la place rien ne marchait... Alors que notre serveur renvoie bien une erreur 500, mais leur proxy la traduit en code 200 pour une raison qui m'échappe... Plusieurs heures à réaliser que ça ne se passait que quand on était sur un réseau SFR, et plusieurs heures encore à trouver le pourquoi du problème !
C'est pas eux qui font la pub pourrie où le mec va dans toutes les pièces de sa maison pour tester le réseau ? \o/
Si, mais le type de la pub arrive à faire ça grâce à un réseau 3G local, généré par un boà®tier relié à sa connexion ADSL. Pour reproduire le miracle chez toi, il faut ACHETER la boà®te magique à SFR, et accepter d'être débité sur TON forfait téléphonique pour des données 3G transitant par TON ADSL. Classe, hein ?