Comment faire pour maintenir une session en objective-c?
Donc j'ai eu le problème suivant:
J'ai une connexion viewcontroller et une forme viewcontroller. Sur la connexion viewcontroller, je vous envoie une requête POST vers un script PHP qui valide si l'utilisateur a accès. Le script retourne juste un 1 ou 0. Donc, je peux alors choisir de rejeter ou de maintenir le viewcontroller. Lorsque les informations d'identification sont transmises à droite, l'utilisateur aura la forme de la manette. Ce contrôleur a un bouton pour aller chercher un formulaire.
Le bouton pour extraire la forme, effectue une requête POST vers un autre script PHP, qui renvoie un document XML avec les valeurs de l'utilisateur. J'ai besoin d'un moyen de se rappeler le nom d'utilisateur et le mot de passe de l'utilisateur est passé à travers. Donc je peux les utiliser dans un autre (vue) du contrôleur.
Quelqu'un connais un moyen pour y parvenir?
Ajouter le nom d'utilisateur et mot de passe dans un fichier plist.
OriginalL'auteur Jack Sierkstra | 2011-08-12
Vous devez vous connecter pour publier un commentaire.
Si vous utilisez NSURLConnection, et la session est basée sur les cookies, cela est fait automatiquement. Donc tout ce que vous devez écrire serait semblable à ce
Et pour la mise en œuvre de la NSURLConnectionDelegate des méthodes de
Si vous avez d'autres informations c'est dans les en-têtes et à qui vous devez l'envoyer en arrière, avec pour conséquence la demande, vous pouvez le lire à partir de la réponse, comme ce
Et de définir les champs d'en-tête pour la prochaine requête comme ceci
À enregistrer des informations, nom d'utilisateur et/ou mot de passe ou les informations de session, vous pouvez utiliser NSUserDefaults
Enfin, il serait souhaitable de construire un modèle de carte de l'API xml avec [par exemple: une classe d'Utilisateur avec le nom d'utilisateur et le mot de passe de propriétés].
Google pour Apple docs sur MVC.
Espérons que cette aide!
C'est encore mieux! Assurez-vous juste que useCookiePersistance est allumé. Aussi, vous pouvez gérer manuellement les cookies. Cochez cette allseeing-i.com/ASIHTTPRequest/How-to-use#persistent_cookies
Comment détecter qu'une Session a expiré côté client? Ce rappel doit-on s'attendre? Ou est-ce juste une question de vérification pour voir si la requête (avec l'id de session) a réussi ou pas? Merci à l'avance!
Ainsi lorsqu'une session expire, le serveur doit renvoyer une réponse appropriée code et peut-être un message d'erreur. Un " échec de l'appel peut être un indicateur de session est expirée, mais l'échec de la condition ne sera pas exclusif à la session d'expiration. Peut être due à d'autres raisons.
OriginalL'auteur Abhinit
Créer un "modèle" de l'objet de votre programme (avoir un coup d'oeil à la modèle-vue-contrôleur modèle, qui est omniprésent dans le cacao), puis votre login contrôleur, magasin nom d'utilisateur et le mot de passe dans le modèle; puis, à partir de là où vous avez besoin d'accéder à ces données, de les lire à partir du modèle.
OriginalL'auteur sergio
Ouais ASI Requête HTTP est dérivé essentiellement à partir de NSURL classe seulement..u ne devez pas vous soucier HTTP retour d'appel.qu'à stocker ces valeurs dans plist de l'utilisation de sqlite pour complexe et énorme de stockage de données but
OriginalL'auteur Allamaprabhu
Je vais vous donner une réponse complète, avec Swift.
Ne pas utiliser NSUserDefaults et de ne pas stocker le mot de passe c'est une mauvaise solution
NSUserDefaults données ne sont pas cryptées, il peut causer de problème de sécurité.
Nous allons créer un utilisateur structurée de la classe au lieu
Lorsque l'utilisateur connecté, vous devez vous assurer que vous avez accès aux données de l'utilisateur tout au long de l'application de sorte que vous pouvez obtenir les données sur l'écran quand vous en avez besoin.
Pour atteindre cet objectif, nous avons besoin de faire une grande structure pour organiser cela. Rappelez-vous que l'utilisateur actuel et un autre d'utilisateurs sont à la fois "utilisateur" nous allons donc utiliser la même classe.
Créer une classe et le nom "EDUser" (vous pouvez choisir un autre nom si vous voulez).
Cette classe contient une information d'utilisateur (utilisateur actuel ou un autre utilisateur).
De plus, cette classe aura la capacité de connecter l'utilisateur.
Voici une image de ce que la classe pourrait ressembler à:
Cas D'Utilisation
Maintenant avec tout en place, nous pouvons l'utiliser comme ceci
Non-blocage de l'exploitation forestière dans le processus
Déconnexion
Vérifier si l'utilisateur est connecté
Récupération des données de l'utilisateur sur n'importe quel écran
Stocker d'autres utilisateurs en tant qu'objet
Salut Jack, j'ai cherché sur iOS session en stackoverflow. Et il n'y a pas de bonne explication. Ce post a pour but d'aider les nouveaux développeurs de ne pas utiliser la mauvaise méthode. JWT jeton est très bien, vous pouvez l'utiliser avec cette technique. Btw, le code que j'ai écrit ici est venu de Facebook Analyser Bibliothèque de code source. J'ai refait le code pour l'adapter les lecteurs ont besoin ici.
OriginalL'auteur Edward Anthony