2009-06-20 8 views
0

Nous avions une question relative aux meilleures pratiques en matière d'authentification de connexion iPhone à l'aide de NSURLConnection asynchrone. Étant donné que le même délégué est utilisé pour se connecter à un serveur, comment différencier les notifications revenant pour une demande d'authentification, par rapport à quand vous recevez des données pour les demandes de données suivantes?Notifications de connexion iPhone

Merci,

Sj

Répondre

1

Si par l'authentification, vous entendez l'authentification HTTP, alors ce n'est pas remis de nouveau à vous en tant que données. Il revient en -connection:didReceiveAuthenticationChallenge:. Si vous parlez d'un protocole de niveau supérieur qui gère l'authentification au-dessus de la couche HTTP, votre tâche consiste à garder une trace de l'état actuel de votre connexion.

Voir Using NSURLConnection pour plus de détails sur HTTP Auth.

+0

Donc, j'ai un travail auth, ce que je ne comprends pas, c'est comment différencier didRetrieveData pour différentes demandes. Ce que je me demande, c'est comment différencier un didRetrieveData pour une requête d'authentification, par rapport à la même chose pour une requête d'une autre nature (récupérer json pour ex). Merci Rob. –

+0

Si nous parlons HTTP Auth, vous ne devriez pas obtenir didReceiveData un défi d'authentification HTTP. De quel type de demande d'autorisation faites-vous référence? –

0

Le modèle commun à utiliser serait de créer une classe différente pour chaque type de demande que vous avez et de lui faire gérer la durée de vie NSURLConnection. Il peut ensuite renvoyer des événements à son délégué.

L'autre méthode consisterait à se souvenir de tous les NSURLConnection que vous avez créés et de les comparer au premier paramètre des rappels de délégué.

Questions connexes