Límites de número y tamaño de una cookie en Internet Explorer

Exención de responsabilidades de contenido KB retirado

Este artículo se refiere a productos para los que Microsoft ya no ofrece soporte técnico. Por tanto, el presente artículo se ofrece "tal cual" y no será actualizado.

Resumen

Microsoft Internet Explorer cumple los siguientes RFC 2109 recomienda mínimo limitaciones:

  • al menos 300 cookies
  • mínimo de 4096 bytes por cookie (según lo medido por el tamaño de los caracteres que componen la cookie no terminal en la descripción de la sintaxis del encabezado Set-Cookie)
  • al menos 20 cookies por nombre de host o dominio único
Nota: Estas limitaciones mínimas recomendadas aparecen en RFC 2109, sección 6.3, "Límites de implementación". Para obtener más información, consulte la sección "Referencias".

Más información

Cada cookie comienza con un par de nombre y valor. Este par está seguido de cero o más pares de atributo / valor separados por punto y coma. Para un nombre de dominio, cada cookie está limitado a 4.096 bytes. Este total puede existir como un par de nombre y valor de 4 kilobytes (KB) o como hasta ese total 4 KB de pares de nombre y valor 20. Si el equipo no tiene suficiente espacio para almacenar la cookie, la cookie se descarta. No se trunca. Las aplicaciones deben utilizar la menor cantidad de cookies posible y tan pequeñas como sea posible. Además, las aplicaciones deben ser capaces de controlar la pérdida de una cookie.

Si una aplicación Web utiliza más de 19 cookies personalizadas , puede perderse el estado de sesión ASP. Internet Explorer 4.0 y versiones posteriores permiten un total de 20 cookies por cada dominio. Como ASPSessionID es una cookie, si se utilizan 20 o más cookies personalizadas, el explorador se ve obligado a descartar la cookie ASPSessionID y perder la sesión.

Para almacenar más de 20 pares de nombre / valor de un dominio, puede crear un diccionario de cookies mediante la concatenación de varios pares de nombre / valor para cada cookie hasta alcanzar el límite de 4096 bytes para cada cookie. Actualmente, para recuperar estos valores de secuencias de comandos de cliente, debe analizar manualmente las cookies. Sin embargo, las páginas Active Server de solicitud y los objetos de respuesta incluyen funcionalidad integrada para trabajar con diccionarios de cookies como objetos de diccionario. El código de ejemplo siguiente muestra el uso del diccionario de cookies en una página ASP:

<%   Response.Cookies ("MyCookie")("a")="A"
Response.Cookies ("MyCookie")("b")="B"
Response.Cookies ("MyCookie")("c")="C"
Response.Cookies ("MyCookie")("d")="D"
Response.Cookies ("MyCookie")("e")="E"
Response.Cookies ("MyCookie")("f")="F"
Response.Cookies ("MyCookie")("g")="G"
Response.Cookies ("MyCookie")("h")="H"
Response.Cookies ("MyCookie")("i")="I"
Response.Cookies ("MyCookie")("j")="J"
Response.Cookies ("MyCookie")("k")="K"
Response.Cookies ("MyCookie")("l")="L"
Response.Cookies ("MyCookie")("a1")="A"
Response.Cookies ("MyCookie")("b1")="B"
Response.Cookies ("MyCookie")("c1")="C"
Response.Cookies ("MyCookie")("d1")="D"
Response.Cookies ("MyCookie")("e1")="E"
Response.Cookies ("MyCookie")("f1")="F"
Response.Cookies ("MyCookie")("g1")="G"
Response.Cookies ("MyCookie")("h1")="H"
Response.Cookies ("MyCookie")("i1")="I"
Response.Cookies ("MyCookie")("j1")="J"
Response.Cookies ("MyCookie")("k1")="K"
Response.Cookies ("MyCookie")("l1")="L"

Response.Cookies("MyCookie").Expires = "12/31/2001"


For Each strKey In Request.Cookies
Response.Write strKey & " = " & Request.Cookies(strKey) & "<BR><BR>"
If Request.Cookies(strKey).HasKeys Then
For Each strSubKey In Request.Cookies(strKey)
Response.Write "->" & strKey & "(" & strSubKey & ") = " & _
Request.Cookies(strKey)(strSubKey) & "<BR>"
Next
End If
Next
%>
Nota: En Internet Explorer 5.0 y versiones posteriores, puede utilizar el comportamiento de userData para conservar los datos en todas las sesiones. Este comportamiento tiene una mayor capacidad que las cookies.


Si utiliza la propiedad document.cookie para recuperar la cookie en el cliente, la propiedad document.cookie puede recuperar sólo 4.096 bytes. Este total de bytes puede ser un par de nombre y valor de 4 KB, o puede ser hasta 20 pares de nombre y valor que tienen un tamaño total de 4 KB.


La función document.getcookie llama al método CDocument::GetCookie en HTML de Microsoft.

Para obtener más información, haga clic en el siguiente número de artículo para verlo en Microsoft Knowledge Base:

820536 propiedad Document.Cookie devuelve una cadena vacía

Referencias

Para obtener más información acerca de las especificaciones de RFC 2109, consulte los siguientes sitios Web:

Internet Engineering Task Force (IETF)
http://www.ietf.org/rfc/rfc2109.txt

World Wide Web Consortium (W3C)
http://www.w3.org/Protocols/rfc2109/rfc2109
Para obtener más información acerca de la colección de Cookies , consulte el siguiente sitio Web de Microsoft Developer Network (MSDN):

Para obtener más información acerca del comportamiento de userData , consulte el siguiente sitio Web de MSDN:
Para obtener más información acerca de las cookies, consulte el siguiente sitio Web Central de Cookie:
Para obtener más información, haga clic en el siguiente número de artículo para verlo en Microsoft Knowledge Base:

157906 cómo mantener el estado entre páginas con VBScript

175167 cómo almacenar el estado en las aplicaciones de páginas Active Server

Para obtener más información acerca de cómo desarrollar soluciones basadas en Web para Microsoft Internet Explorer, visite los siguientes sitios Web de Microsoft:Microsoft proporciona información de contacto de terceros para ayudarle a encontrar soporte técnico. Esta información de contacto puede cambiar sin previo aviso. Microsoft no garantiza la exactitud de esta información de contacto de terceros.
Propiedades

Id. de artículo: 306070 - Última revisión: 22 ene. 2017 - Revisión: 1

Comentarios