usar servlet httpservlet example ejemplo contenedor java servlets

httpservlet - servlet java ejemplo



Cookie getMaxAge (4)

Solo por sonrisas, ¿puedes recuperar el valor de la cookie del navegador usando javascript?

Además, ¿puede poner un filtro antes de su servlet / jsp para que pueda verificar el valor de la cookie después de que el servlet / jsp lo configure?

No puedo recuperar el máximo de cookies; siempre devuelve -1

Creando cookie:

Cookie securityCookie = new Cookie("sec", "somevalue"); securityCookie.setMaxAge(EXPIRATION_TIME);

Recuperar cookie:

Cookie[] cookies = request.getCookies(); if (cookies != null) { for(int i=0; i<cookies.length; i++) { Cookie cookie = cookies[i]; if ("sec".equals(cookie.getName())){ int age = cookie.getMaxAge(); } } }

siempre estoy envejeciendo = -1

también cuando miro en la expiración de la cookie de firefox veo una fecha extraña.

Gracias


El valor puede ser modificado por el navegador.

Usted crea una cookie y desea establecer una edad máxima. La cookie se envía al navegador. El navegador puede rechazar la cookie o ignorar una edad máxima demasiado larga para su política. Esta cookie modificada se envía de vuelta a su aplicación.

Verifique la configuración de su navegador.


La API dice que -1 significa hasta que el navegador se esté ejecutando:

Devuelve la antigüedad máxima de la cookie, especificada en segundos. De forma predeterminada, -1 indica que la cookie persistirá hasta el cierre del navegador.

¿Cuál es el valor de EXPIRATION_TIME constante?


Cuando un navegador envía una cookie al servidor de origen, no incluye ninguna edad. Por lo tanto, es lógico que su código de "recuperación" anterior no reciba una edad máxima: no está incluido en la solicitud.

Cuando se recibe la cookie del servidor, el navegador utiliza el parámetro de edad máxima para determinar cuánto tiempo se debe guardar la cookie; la edad nunca se comunica al servidor, una cookie vencida simplemente se descarta. Al procesar una solicitud, si desea renovar la antigüedad de la cookie, vuelva a incluir la cookie en la respuesta.

Consulte también la sección "Envío de cookies al servidor de origen" en el RFC .