Junior
163
Quelles méthodes sont prévues pour travailler avec les cookies dans les servlets?
Réponse de l'IA
sobes.tech IA
Dans les servlets, les méthodes des objets HttpServletRequest (pour obtenir les cookies) et HttpServletResponse (pour envoyer des cookies) sont utilisées.
Obtention de cookies à partir de la requête :
Cookie[] getCookies(): Renvoie un tableau d'objetsCookieobtenus dans la requête. Si aucune cookie n'est présente, renvoienull.
Envoi de cookies dans la réponse :
void addCookie(Cookie cookie): Ajoute l'objetCookiespécifié à la réponse.
La classe Cookie contient les méthodes principales suivantes :
String getName(): Renvoie le nom du cookie.String getValue(): Renvoie la valeur du cookie.void setValue(String newValue): Définit une nouvelle valeur pour le cookie.String getPath(): Renvoie le chemin où le cookie est accessible.void setPath(String uri): Définit le chemin pour le cookie.String getDomain(): Renvoie le domaine pour lequel le cookie est valide.void setDomain(String pattern): Définit le domaine pour le cookie.int getMaxAge(): Renvoie la durée de vie maximale (en secondes) du cookie. Une valeur négative signifie que le cookie existe jusqu'à la fermeture du navigateur. 0 signifie supprimer le cookie.void setMaxAge(int expiry): Définit la durée de vie maximale du cookie.boolean getSecure(): Renvoietruesi le cookie doit être envoyé uniquement via une connexion sécurisée (HTTPS).void setSecure(boolean flag): Définit le drapeau de connexion sécurisée pour le cookie.int getVersion(): Renvoie la version du protocole du cookie.void setVersion(int v): Définit la version du protocole du cookie.boolean isHttpOnly(): Renvoietruesi le cookie est accessible uniquement via des requêtes HTTP (pas via JavaScript).void setHttpOnly(boolean isHttpOnly): Définit le drapeau HttpOnly pour le cookie.
Exemple d'obtention et de définition de cookies :
// Obtention de cookies à partir de la requête
Cookie[] cookies = request.getCookies();
if (cookies != null) {
for (Cookie cookie : cookies) {
if ("userName".equals(cookie.getName())) {
String userName = cookie.getValue();
// Utilisez la valeur du cookie
break;
}
}
}
// Définition d'un nouveau cookie dans la réponse
Cookie newCookie = new Cookie("language", "en");
newCookie.setMaxAge(60 * 60 * 24 * 30); // Durée de vie de 30 jours
response.addCookie(newCookie);