javascript - variable - Necesito obtener todas las cookies del navegador
obtener valor de una cookie javascript (6)
- No puedes ver cookies para otros sitios.
- No puede ver las cookies http-only.
- Todas las cookies que puede ver están en la propiedad
document.cookie
, que contiene una lista de pares nombre = valor separados por punto y coma.
Necesito obtener todas las cookies almacenadas en mi navegador usando javascript. ¿Cómo puede hacerse esto?
Como el título no especificaba que tenía que ser programático, supongo que era un problema genuino de depuración / gestión de la privacidad y la solución depende del navegador y requiere un navegador con una función detallada de gestión de cookies y / o un módulo de depuración o un complemento / extensión. Voy a enumerar uno y pediré a otras personas que escriban en los navegadores que conocen en detalle y sean precisos con las versiones.
Cromo, construcción de hierro (SRWare Iron 4.0.280)
El menú de herramientas (herramientas): Opciones / En The Hood / [Mostrar cookies y permisos del sitio web] Para los dominios / sitios relacionados, escriba el sufijo en el cuadro de búsqueda (como .foo.tv). Advertencia: cuando tiene un nodo (sitio o cookie), haga clic en resaltado solo utilice [Eliminar] para eliminar subárboles específicos. El uso de [Eliminar todo] aún eliminará las cookies de todos los sitios seleccionados por búsqueda y perderá su sesión de depuración.
Dustin Diaz escribió sobre esto:
http://www.dustindiaz.com/top-ten-javascript
function getCookie( name ) {
var start = document.cookie.indexOf( name + "=" );
var len = start + name.length + 1;
if ( ( !start ) && ( name != document.cookie.substring( 0, name.length ) ) ) {
return null;
}
if ( start == -1 ) return null;
var end = document.cookie.indexOf( '';'', len );
if ( end == -1 ) end = document.cookie.length;
return unescape( document.cookie.substring( len, end ) );
}
No puedes. Por diseño, por razones de seguridad, puede acceder solo a las cookies establecidas por su sitio. no puede ver las cookies establecidas por UserVoice ni las establecidas por Amazon.
Para recuperar todas las cookies para el documento actual abierto en el navegador, nuevamente usa la propiedad document.cookie
.
Solo puede acceder a las cookies de un sitio específico. Con document.cookie
obtendrá una lista de pares clave = valor escapado separados por un punto y coma.
secret=do%20not%20tell%you;last_visit=1225445171794
Para simplificar el acceso, debe analizar la cadena y deshacer el escape de todas las entradas:
var getCookies = function(){
var pairs = document.cookie.split(";");
var cookies = {};
for (var i=0; i<pairs.length; i++){
var pair = pairs[i].split("=");
cookies[(pair[0]+'''').trim()] = unescape(pair[1]);
}
return cookies;
}
Entonces podrías escribir más tarde:
var myCookies = getCookies();
alert(myCookies.secret); // "do not tell you"