AQuetto Profile picture
14 Sep, 10 tweets, 3 min read
¿Sabes qué son y en qué se diferencian una cookie, local storage y session storage? Si no es así, enjoy👇🏻
Cookies: almacenan poca información y perduran hasta un tiempo de expiración determinado de cuando fueron creadas. Viajan en todas las requests automáticamente, sin necesidad de indicarlo explícitamente.
También pueden tener alcance cross-domain o no.
Session storage: perdura hasta el cierre del navegador o la pestaña. Posee más espacio de almacenamiento que una cookie.
Local storage: perdura hasta la limpieza del caché e información local. Puede almacenar muchísimas información al costo de más consumo en memoria del navegador.
Es muy común ver casos donde el hash de sesión se encuentre en una cookie. ¿Porqué? Simplemente viajará en cada request al backend y así determinara implícitamente la autenticación. Las cookies pueden ser creadas server-side y establecidas al navegador en la carga.
Session y Local Storage deben recurrir a sus métodos para ser creados y leídos.

sessionStorage.setItem('key', 'value');
const data = sessionStorage.getItem('key');

localStorage.setItem('key', 'value');
const data = localStorage.getItem('key');
Cookies no tiene métodos similares a los storage, sino que es más “manual” sobre el document. Pero sí hay dependencias que nos facilitan la tarea enormemente. Personalmente utilizo js-cookie que es simular al uso de los métodos anteriores npmjs.com/package/js-coo…
¿Dónde ver el contenido de cada uno? Simplemente vayan a las herramientas de desarrollador → aplicaciones y a la izquierda podrán ver su contenido.
Si bien hay métodos para crear cookies, personalmente no me parecen atractivos. En mi experiencia, que puede variar la opinión, prefiero incluir una librería que me permita gestionarlos mejor.
Lo que viaja al servidor es un string con todas las cookies. En nuestro servidor en node precisaríamos un parser: npmjs.com/package/cookie…

Esto haría de middleware. Deben incluirlo antes de las rutas que declaren. Después haciendo req.cookies podrán accederlas como un object 🚀

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with AQuetto

AQuetto Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @AQuetto

14 Sep
¿Qué es un socket y un poco más? Conciso para los amigos 🤗

Es un concepto por el cual se intercambian datos en forma de paquetes entre un cliente y un servidor 📦.
Por ejemplo, comparando contra HTTP directamente:

Ejemplo HTTP:
Cliente hace un GET ➡️ el servidor responde

Ejemplo socket (TCP):
Cliente se conecta ➡️ el cliente o el servidor le emite un paquete sin haber sido solicitado necesariamente por el cliente en primera instancia
En conclusión, un socket es la conexión fisica entre dos puntos y la manera en si persiste o no dependerá de su protocolo👇🏻
Read 14 tweets
19 Jun
Asincronía con ensaladas🥗. En este hilo les voy a explicar el concepto y cómo puede servirnos.

👉¿Qué es algo asincrónico? 😨
Una acción que se realiza independientemente de que otra haya comenzado y terminado para comenzar. Pueden darse en paralelo.
👉 Ejemplos:
Línea de tiempo sincrónica:
lavar y cortar 🍅 → pelar y cortar 🥑

Línea de tiempo asincrónica:
lavar 🍅 → cortar 🍅
pelar 🥑 → cortar 🥑

👉 ¿De qué nos sirve? Podríamos mejorar nuestro tiempo de preparación siempre y cuando un ingrediente no dependa de otro.
👉 Sincrónico:
lavar 🍅 → cortar 🍅 → pelar 🥑 → cortar 🥑 → pelar 🌽 → hervir 🌽 → cortar 🌽 → mezclar → condimentar → LISTO 🥗

👉 Asincrónico:
pelar 🌽 → hervir 🌽 → lavar 🍅 → pelar 🥑 → quitar del fuego 🌽 → cortar 🥑 🍅 🌽 → mezclar → condimentar → LISTO 🥗
Read 6 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!

Follow Us on Twitter!