Object-ingebouwd object

ObjectHttpCookie

HttpCookie is een cookie-object ingekapseld door het HTTP-protocol. Het biedt verschillende attributen voor het verkrijgen en instellen van cookies. Het ondersteunt ook de organisatie en verwerking van meerdere cookies. Het ishttp.RequestEnhttp.ResponseEen belangrijke eigenschap die door beide objecten wordt ondersteund

Aan de serverkant kun je slagenHttpRequest.cookiesom alle cookies in het HTTP-verzoek te krijgen. Elke cookie hier is een HttpCookie-object en cookie-gerelateerde informatie kan worden verkregen of ingesteld via de eigenschappen of methoden ervan. We kunnen bijvoorbeeld de bijbehorende attributen uit de cookie lezen die door de klant is verzonden via de volgende code:

1 2 3 4 5 6 7
const 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();

Hier gebruiken wijHttpRequest.cookiesDe accommodatie krijgt alle cookies in het verzoek. Gebruik vervolgens de methode cookies.get, waarbij u de naam van de cookie doorgeeft, om de waarde van de cookie te achterhalen.

Om een ​​cookie naar de client te sturen, maakt u een nieuwe cookie via het HttpCookie-object en voegt u deze toe aan de HttpReponse.cookies-verzameling. Hier is een voorbeeld:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
const 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();

In het bovenstaande voorbeeld verkrijgen we eerst HttpServletRequest.cookies en proberen vervolgens de waarde van de cookie met de naam naam daaruit te lezen. Als de cookie bestaat, stuur dan een reactie op het verzoek en gebruik de cookiewaarde om de klant te begroeten. Als de cookie niet bestaat, maken we een nieuw cookie-object en voegen dit toe aan de verzameling HttpServletResponse.cookies. De eerste parameter met naam en waarde wordt gebruikt om de cookienaam en de bijbehorende waarde op te geven. Tegelijkertijd wordt het expires-attribuut gebruikt om de vervaltijd van de cookie aan te geven, waarbij de huidige tijd plus 15 minuten als vervaltijd wordt opgegeven. Ten slotte voegen we een welkomstbericht toe aan de inhoud van de retourwaarde.

erfenis relatie

Constructeur

HttpCookie

HttpCookie-constructor, creëert een nieuw HttpCookie-object

1
new HttpCookie(Object opts = {});

Oproepparameters:

  • opts: Object, specificeert de eigenschappen van de gemaakte cookie

De opties die opts kunnen instellen zijn als volgt:

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 }

HttpCookie-constructor, creëert een nieuw HttpCookie-object

1 2 3
new HttpCookie(String name, String value, Object opts = {});

Oproepparameters:

  • name: String, specificeert de naam van de gemaakte cookie
  • value: String, specificeert de gemaakte cookiewaarde
  • opts: Object, specificeer andere kenmerken van de gemaakte cookie

De opties die opts kunnen instellen zijn als volgt:

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 }

eigenschappen van leden

name

Tekenreeks, query en cookienaam instellen

1
String HttpCookie.name;

value

Tekenreeks, query en stel cookiewaarden in

1
String HttpCookie.value;

domain

String, domeinnaambereik voor het opvragen en instellen van cookies

1
String HttpCookie.domain;

path

Tekenreeks, query en stel het cookiepadbereik in

1
String HttpCookie.path;

expires

Datum, opvragen en instellen van de vervaltijd van de cookies

1
Date HttpCookie.expires;

httpOnly

Boolean, opvragen en instellen of cookies alleen zijn toegestaanhttpVerzoek, standaard onwaar

1
Boolean HttpCookie.httpOnly;

secure

Booleaans, opvragen en instellen of cookies alleen via https worden doorgegeven, standaard false

1
Boolean HttpCookie.secure;

lid functie

parse

Parseer de gegeven string en vul het cookie-object in

1
HttpCookie.parse(String header);

Oproepparameters:

  • header: String, specificeert de headertekenreeks die moet worden geparseerd

match

Test het gegevenurlKomt het overeen met de huidige instellingen?

1
Boolean HttpCookie.match(String url);

Oproepparameters:

  • url: String, die de test specificeerturl

Resultaten retourneren:

  • Boolean, retourneert true als de match succesvol is

toString

Retourneert de tekenreeksweergave van het object. Over het algemeen wordt '[Native Object]' geretourneerd. Het object kan opnieuw worden geïmplementeerd op basis van zijn eigen kenmerken.

1
String HttpCookie.toString();

Resultaten retourneren:

  • String, retourneert de tekenreeksrepresentatie van het object

toJSON

Retourneert een weergave in JSON-indeling van het object, waarbij doorgaans een verzameling leesbare eigenschappen wordt geretourneerd die door het object zijn gedefinieerd.

1
Value HttpCookie.toJSON(String key = "");

Oproepparameters:

  • key: Tekenreeks, niet gebruikt

Resultaten retourneren:

  • Value, retourneert een waarde die JSON-serialiseerbaar bevat