ObjetoHttpCookie
HttpCookie es un objeto cookie encapsulado por el protocolo HTTP. Proporciona varios atributos para obtener y configurar cookies. También admite la organización y el procesamiento de múltiples cookies.http.Requestyhttp.ResponseUna propiedad importante respaldada por ambos objetos.
En el lado del servidor, puedes pasarHttpRequest.cookiespara obtener todas las cookies en la solicitud HTTP. Cada cookie aquí es un objeto HttpCookie y la información relacionada con las cookies se puede obtener o configurar a través de sus propiedades o métodos. Por ejemplo, podemos leer los atributos correspondientes de la cookie enviada por el cliente a través del siguiente código:
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í usamosHttpRequest.cookiesLa propiedad recibe todas las cookies en la solicitud. Luego use el método cookies.get, pasando el nombre de la cookie, para obtener el valor de la cookie.
Para enviar una cookie al cliente, cree una nueva cookie a través del objeto HttpCookie y agréguela a la colección HttpReponse.cookies. Aquí hay un ejemplo:
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();
En el ejemplo anterior, primero obtenemos HttpServletRequest.cookies y luego intentamos leer el valor de la cookie denominada nombre. Si la cookie existe, envíe una respuesta a la solicitud y utilice el valor de la cookie para saludar al cliente. Si la cookie no existe, creamos un nuevo objeto de cookie y lo agregamos a la colección HttpServletResponse.cookies. El primer parámetro con nombre y valor se utiliza para especificar el nombre de la cookie y el valor correspondiente. Al mismo tiempo, el atributo expires se utiliza para especificar el tiempo de vencimiento de la cookie, aquí se especifica la hora actual más 15 minutos como tiempo de vencimiento. Finalmente, agregamos un mensaje de bienvenida al contenido del valor de retorno.
relación de herencia
Constructor
HttpCookie
Constructor HttpCookie, crea un nuevo objeto HttpCookie
1new HttpCookie(Object opts = {});
Parámetros de llamada:
- opts: Objeto, especifica las propiedades de la cookie creada.
Las opciones que las opciones pueden configurar son las siguientes:
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
}
Constructor HttpCookie, crea un nuevo objeto HttpCookie
1
2
3new HttpCookie(String name,
String value,
Object opts = {});
Parámetros de llamada:
- name: Cadena, especifica el nombre de la cookie creada
- value: Cadena, especifica el valor de la cookie creada
- opts: Objeto, especifica otros atributos de la cookie creada
Las opciones que las opciones pueden configurar son las siguientes:
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
}
propiedades de miembros
name
Cadena, consulta y configuración del nombre de la cookie
1String HttpCookie.name;
value
Cadena, consulta y configuración de valores de cookies
1String HttpCookie.value;
domain
Cadena, rango de nombres de dominio para consultar y configurar cookies
1String HttpCookie.domain;
path
Cadena, consulta y configuración del rango de ruta de cookies
1String HttpCookie.path;
expires
Fechar, consultar y establecer tiempo de caducidad de cookies
1Date HttpCookie.expires;
httpOnly
Booleano, consulta y establece si solo se permiten cookieshttpSolicitud, por defecto falso
1Boolean HttpCookie.httpOnly;
secure
Booleano, consulta y establece si las cookies solo se pasan a través de https, por defecto es falso
1Boolean HttpCookie.secure;
función miembro
parse
Analiza la cadena dada y completa el objeto cookie
1HttpCookie.parse(String header);
Parámetros de llamada:
- header: Cadena, especifica la cadena de encabezado que debe analizarse
match
prueba lo dadourl¿Coincide con la configuración actual?
1Boolean HttpCookie.match(String url);
Parámetros de llamada:
- url: Cadena, especificando la prueba.url
Resultados de devolución:
- Boolean, devuelve verdadero si la coincidencia es exitosa
toString
Devuelve la representación de cadena del objeto. Generalmente, se devuelve "[Objeto nativo]". El objeto se puede volver a implementar de acuerdo con sus propias características.
1String HttpCookie.toString();
Resultados de devolución:
- String, devuelve la representación de cadena del objeto
toJSON
Devuelve una representación en formato JSON del objeto, que generalmente devuelve una colección de propiedades legibles definidas por el objeto.
1Value HttpCookie.toJSON(String key = "");
Parámetros de llamada:
- key: Cadena, no utilizada
Resultados de devolución:
- Value, devuelve un valor que contiene JSON serializable