Annexe 2
description
Transcript of Annexe 2
Annexe 2
entêtes HTTP et cookies
Accéder aux objets requêtes et réponses
Ces objets sont disponibles dans les classes clé depuis
•la méthode awake
•les méthodes recevant ces objets en paramètres
•n ’importe quelle méthode grâce au contexte
WORequest request = context().request();
WOResponse response = context().response();
Ces objets ne sont pas disponibles uniquement
•dans le constructeur de l ’application
•dans le constructeur de la session
Accéder aux entêtes HTTP
Un entête HTTP est une paire « clé/valeur »
Exemple
accept-language=fr,en
Depuis un objet requête
String val = request.headerForKey(``accept-language``);
NSArray keys = request.headerKeys();
Les cookies
•Un cookie est une paire clé/valeur stockée sur le poste client
•Il peut-être le lieu de stockage de l ’identifiant de session
•Il peut-être utilisé pour conserver des données concernant un
utilisateur sur le poste client
•un utilisateur peut configurer son navigateur pour refuser les
cookies !
Les cookies
•Pour ajouter un cookie à un objet réponse
WOCookie cookie =WOCookie.cookieWithName(cle,valeur);
response.addCookie(cookie);
•Pour spécifier les paramètre d ’un cookie•void setDomain(String domain)•void setPath(String path)•…
Les cookies
•Pour extraire les données d ’un cookie String val = request.cookieValueForKey(cle);NSArray valeurs = request.cookieValues();
•Les valeurs récupérées sont directement les chaînes de
caractères, pas des objets de type WOCookie
Les cookies
Pour placer l ’identifiant de session dans un cookie
public Session() {
super();
setStoresIDsInURLs(false);
setStoresIDsInCookies(true);
}
Ajouter du contenu personnalisé
Il est possible de contrôler le contenu d ’une réponse
reponse.setContent(data);
reponse.appendContentData(data);
Annexe 2
entêtes HTTP et cookies