javascript - sesiones - js-cookie npm
Cookies solo para el cliente-cookie que nunca llega al servidor (4)
Estoy 100% seguro de que no hay forma de forzar que las cookies sean solo del lado del cliente, siempre se envían al servidor. Sin embargo, es posible hacer lo contrario: solo las cookies del lado del servidor (no legibles por javascript) estableciendo la marca HttpOnly en la cookie.
Quiero almacenar los datos de los usuarios en una cookie que nunca tiene que ir al servidor. Es como un dato de sesión agregada, que deseo persistir durante las sesiones, ya que los datos solo se agregan a la cookie, se almacenan durante mucho tiempo y solo se eliminan cuando el usuario elimina el historial de navegación. La cookie es solo una cookie de cliente puro y nunca tiene que ir al servidor, ya que no necesito los datos generados por el usuario en el servidor, por lo que quiero deshacerme de la sobrecarga adicional que la cookie crea al enviar una y otra vez entre navegador y servidor. ¿Es posible lograr esto?
Sé que es un poco tarde para ti, pero esta respuesta es para todos los que tienen el mismo problema.
1) Con HTML5 puedes usar almacenamiento web .
2) (¡Solo una idea! ¡No está probado!) Puede definir una cookie (a través de javascript en el cliente) y configurar el atributo "seguro". En este caso, la cookie solo se enviará al servidor en conexiones HTTPS. Para asegurarse de que la cookie nunca abandone el navegador, nunca abra una conexión HTTPS ;-)
Actualizar:
También puede simplemente establecer la ruta de acceso de la cookie a una ruta que realmente no existe.
document.cookie="name=value;path=/notExistingPath";
Si la compatibilidad del navegador es una preocupación, puede usar un poco de javascript para envolver varias tecnologías diferentes. Las versiones anteriores de IE admiten (supprise supprise) una versión propietaria de localstorage llamada userData (no creo que sea exactamente la misma, pero debería hacer lo que necesite).
Un script de envoltura como http://www.jstorage.info/ o https://github.com/marcuswestin/store.js debe hacer lo que necesita que haga.
Utilice un camino imposible para establecer la cookie:
document.cookie = "cookieName=...; expires=... ; path=/never_reached/ablkappmqlnahsuia";