283 votes

Domaine de l’erreur = NSURLErrorDomain Code =-1005 « la connexion réseau a été perdue. »

J’ai pas d’application qui fonctionne très bien sur Xcode6-Beta1 et Xcode6-Beta2 sur iOS7 et iOS8, mais, en Xcode6-Beta3, Beta4, Beta5 face à problème de réseau sur iOS8, mais fonctionne très bien sur iOS7. J’ai erreur `` . L’erreur imprimé était comme suit :

J’utilise AFNetworking 2.x et suivant l’extrait de code pour appeler le réseau :

J’ai essayé avec NSURLSession et encore, je reçois la même erreur.

413voto

Collin Points 1076
En ce qui me concerne, la question porte sur la manière d'agir et non sur la pertinence d'agir.

247voto

Arthur Points 350

Nous ajoutons cette erreur exacte et il s'est avéré être un problème avec le sous-jacent HTTP mise en œuvre de l' NSURLRequest:

Aussi loin que nous pouvons dire, quand iOS 8 recevoir une réponse HTTP avec un Keep-Alive - tête, il garde ce lien pour ré-utiliser plus tard (comme il se doit), mais elle le garde pour plus de la timeout paramètre de la Keep-Alive-tête, puis lors d'une deuxième demande, il essaie de ré-utiliser une connexion qui a été supprimée par le serveur.

Comme un singe patch si quelqu'un d'autre a eu ce problème, vous pouvez ajouter BrowserMatch "^iOS/8\." nokeepalive (avec le bon user agent) quelque part dans votre serveur Apache config (Ce qui est loin d'être parfait, mais qui fait fonctionner les choses jusqu'à ce que Apple patchs iOS8).

47voto

Manab Kumar Mal Points 93

Pour le mien, `` des œuvres de simulateur. Pour réinitialiser le simulateur procédez comme suit :

iOS Simulator -> Réinitialiser le contenu et les paramètres -> Appuyez sur Reset (sur l’avertissement qui viendra)

29voto

Jeremy Huddleston Points 190

L'iOS 8.0 simulateur d'exécution a un bug où les si la configuration de votre réseau modifications lors de la simulation de l'appareil est démarré, plus haut niveau de l'Api (par exemple: CFNetwork) dans la simulation de runtime penser qu'il a perdu la connectivité réseau. Actuellement, le conseillé solution de contournement est tout simplement redémarrer le périphérique simulé lors de vos changements de configuration du réseau.

Si vous êtes concernés par ce problème, merci de fichier supplémentaires double radars http://bugreport.apple.com pour obtenir une plus grande priorité.

Si vous voyez cette question sans avoir changé de configurations de réseau, alors que c'est pas un bug connu, et vous devriez certainement déposer un radar, indiquant que la question n'est pas connu de configuration de réseau-changé bug.

11voto

ptc Points 101

Également un problème avec la version beta 5 et AFNetworking 1.3 lors de l'exécution sur iOS8 simulateur qui résulte en une erreur de connexion "Domaine=NSURLErrorDomain Code=-1005 "La connexion réseau a été perdue".". Le même code fonctionne très bien sur iOS7 et 7.1 simulateurs et mon debugging proxy montre que la défaillance se produit avant que la connexion est effectivement tenté (c'est à dire pas de demandes enregistrées). J'ai suivi l'échec de NSURLConnection et signalé le bug à Apple. Voir ci-joint la ligne 5 dans l'image jointe.NSURLConnection client delegate did fail error. Changer pour utiliser le protocole https permet la connexion de iOS8 simulateurs mais avec des erreurs intermittentes. Le problème est toujours présent dans Xcode 6.01 (gm).

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X