JavaScript y las páginas dinámicas no pueden obtener el tiempo cuando la cookie expira. El tiempo de vencimiento es administrado por el navegador. JavaScript y las páginas dinámicas solo pueden establecer el tiempo de vencimiento y no se pueden obtener a través de los atributos Document.cookie (JavaScript) o Cookie.Expires (ASP.NET).
La copia del código es la siguiente:
<%@page idioma = "c#" debug = "true"%>
<script runat = "servidor">
protegido void page_load (remitente de objeto, EventArgs e)
{
Httpcookie hc = request.cookies ["ABC"];
if (hc! = null)
{
Response.write (HC.Expires); // 0001-1-1-1 0:00:00
Respuesta.end ();
}
}
</script>
Aunque la cookie de ASP.NET tiene un atributo expirado, el atributo vence la salida de respuesta. Write obtiene 0001-1-1 0:00:00 (DateTime.MinValue). Esto se debe a que el navegador no envía el tiempo de vencimiento de la cookie al servidor, así que use DateTime.MinValue para completar el atributo expirado de la cookie.
Debe obtener el tiempo de vencimiento y debe registrar el tiempo de vencimiento de la cookie correspondiente a través de otro valor de cookie. como sigue:
La copia del código es la siguiente:
<script>
var d = nueva fecha ();
d.sethours (d.gethours () + 1); // 1 hora expira
document.cookie = 'testValue = 123; expires =' + d.TogmtString (); // valor de cookie de almacenamiento
document.cookie = 'testEXP =' + escapar (d.tolocalEstring ()) + '; expires =' + d.TogmtString (); // Almacene el tiempo de vencimiento de las cookies. Para obtener el tiempo de vencimiento de la cookie TestValue, puede lograrlo obteniendo la cookie TestEx.
</script>