ObjectHttpCookie
HttpCookie és un objecte de galetes encapsulat pel protocol HTTP. Proporciona diversos atributs per obtenir i configurar galetes. També admet l'organització i el processament de múltiples galetes. Éshttp.Requestihttp.ResponseUna propietat important recolzada per ambdós objectes
Al costat del servidor, podeu passarHttpRequest.cookiesper obtenir totes les galetes a la sol·licitud HTTP. Cada galeta aquí és un objecte HttpCookie i la informació relacionada amb les cookies es pot obtenir o configurar mitjançant les seves propietats o mètodes. Per exemple, podem llegir els atributs corresponents de la cookie enviada pel client mitjançant el següent codi:
1
2
3
4
5
6
7const http = require('http');
const server = new http.Server(8080, function(request) {
const cookies = request.cookies;
const name = cookies.get('name');
request.response.write(`Hello ${name}!`);
});
server.start();
Aquí fem servirHttpRequest.cookiesLa propietat obté totes les galetes a la sol·licitud. A continuació, utilitzeu el mètode cookies.get, passant el nom de la galeta, per obtenir el valor de la galeta.
Per enviar una galeta al client, creeu una galeta nova mitjançant l'objecte HttpCookie i afegiu-la a la col·lecció HttpReponse.cookies. Aquí teniu un exemple:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17const http = require('http');
const server = new http.Server(8080, function(request) {
const cookies = request.cookies;
let name = cookies.get('name');
if (name) {
request.response.write(`Hello ${name} again!`);
} else {
name = 'User';
request.response.cookies.add(new http.Cookie('name', name, {
expires: new Date(Date.now() + 900000)
}));
request.response.write(`Welcome ${name}!`);
}
});
server.start();
A l'exemple anterior, primer obtenim HttpServletRequest.cookies i després intentem llegir-ne el valor de la galeta anomenada nom. Si la galeta existeix, envieu una resposta a la sol·licitud i utilitzeu el valor de la galeta per saludar el client. Si la galeta no existeix, creem un nou objecte de galeta i l'afegim a la col·lecció HttpServletResponse.cookies. El primer paràmetre amb nom i valor s'utilitza per especificar el nom de la galeta i el valor corresponent. Al mateix temps, l'atribut expires s'utilitza per especificar el temps de caducitat de la galeta. Aquí, el temps actual més 15 minuts s'especifica com a temps de caducitat. Finalment, afegim un missatge de benvinguda al contingut del valor de retorn.
relació hereditària
Constructor
HttpCookie
El constructor HttpCookie, crea un nou objecte HttpCookie
1new HttpCookie(Object opts = {});
Paràmetres de trucada:
- opts: Objecte, especifica les propietats de la galeta creada
Les opcions que opta pot establir són les següents:
1
2
3
4
5
6
7
8
9{
"name": "", // specify the name of the cookie
"value": "", // specify the value of the cookie
"expires": Date, // specify the expires time of the cookie
"domain": "", // specify the domain of the cookie
"path": "", // specify the path of the cookie
"secure": false, // specify the secure of the cookie
"httpOnly": false, // specify the httpOnly of the cookie
}
El constructor HttpCookie, crea un nou objecte HttpCookie
1
2
3new HttpCookie(String name,
String value,
Object opts = {});
Paràmetres de trucada:
- name: String, especifica el nom de la galeta creada
- value: Cadena, especifica el valor de la galeta creada
- opts: Objecte, especifiqueu altres atributs de la galeta creada
Les opcions que opta pot establir són les següents:
1
2
3
4
5
6
7{
"expires": Date, // specify the expires time of the cookie
"domain": "", // specify the domain of the cookie
"path": "", // specify the path of the cookie
"secure": false, // specify the secure of the cookie
"httpOnly": false, // specify the httpOnly of the cookie
}
propietats dels membres
name
Cadena, consulta i estableix el nom de la galeta
1String HttpCookie.name;
value
Encadenar, consultar i establir valors de galetes
1String HttpCookie.value;
domain
Cadena, rang de noms de domini per consultar i configurar galetes
1String HttpCookie.domain;
path
Cadena, consulta i estableix l'interval de camins de galetes
1String HttpCookie.path;
expires
Data, consulta i estableix l'hora de caducitat de les galetes
1Date HttpCookie.expires;
httpOnly
Booleà, consulta i defineix si només es permeten les galeteshttpSol·licitud, per defecte fals
1Boolean HttpCookie.httpOnly;
secure
Booleà, consulteu i definiu si les galetes només es passen per https, per defecte false
1Boolean HttpCookie.secure;
funció de membre
parse
Analitzeu la cadena donada i ompliu l'objecte galeta
1HttpCookie.parse(String header);
Paràmetres de trucada:
- header: String, especifica la cadena de capçalera que cal analitzar
match
Prova el donaturlCoincideix amb la configuració actual?
1Boolean HttpCookie.match(String url);
Paràmetres de trucada:
- url: Cadena, especificant la provaurl
Resultats de retorn:
- Boolean, retorna true si la coincidència té èxit
toString
Retorna la representació de cadena de l'objecte. En general, es retorna "[Objecte natiu]". L'objecte es pot tornar a implementar segons les seves pròpies característiques.
1String HttpCookie.toString();
Resultats de retorn:
- String, retorna la representació de cadena de l'objecte
toJSON
Retorna una representació en format JSON de l'objecte, generalment retornant una col·lecció de propietats llegibles definides per l'objecte.
1Value HttpCookie.toJSON(String key = "");
Paràmetres de trucada:
- key: Corda, no utilitzada
Resultats de retorn:
- Value, retorna un valor que conté JSON serializable