Cookies vs localStorage

Recentment, se'm va encarregar una pregunta durant una entrevista amb una gran empresa. La pregunta era: "Digues-me la diferència entre les cookies i localStorage?" I tot i que tenia una idea molt àmplia de quines podrien ser les diferències, vaig pensar que m'enfonsaria una mica més en aquest tema.

Introducció a les galetes

Llavors, què són les cookies? Bé, segur que puc dir que no són el que podríeu trobar a la vostra entrepà quan desitgeu dolços ensucrats. De fet, les cookies són fitxers petits que es troben a l’ordinador d’un usuari. Estan dissenyats per contenir una quantitat generosa de dades específiques per a un client i lloc web, i hi poden accedir des del servidor web o per l'ordinador client. La raó d'aquest motiu és permetre al servidor lliurar una pàgina a la mida d'un usuari en concret, o bé la pàgina en si pot contenir algun script que conegui de les dades de la cookie i, per tant, és capaç de portar informació d'una visita al lloc web. a la següent.

Què conté una galeta? Doncs bé, cada cookie és efectivament una petita taula de cerca que conté parells de valors de dades clau. Una vegada llegida la galeta pel codi del servidor o de l’ordinador client, es poden recuperar i utilitzar les dades per personalitzar adequadament la pàgina web.

Les cookies són pràcticament una manera convenient de transportar informació d’una sessió d’un lloc web a un altre, o entre sessions de llocs web relacionats, sense haver de carregar una màquina servidor amb quantitats massives d’emmagatzematge de dades. Si haguéssim emmagatzemat dades al servidor sense fer servir cookies, seria difícil recuperar la informació d’un usuari en particular sense necessitat de realitzar un inici de sessió a cada visita al lloc web. Per tant, es pot utilitzar una cookie simplement si hi ha una gran quantitat d’informació per emmagatzemar. A més, es pot fer una cookie per persistir durant un temps arbitrari.

Introducció a localStorage

localStorage és una manera d’emmagatzemar dades a l’ordinador del client. Permet l'estalvi de parells de claus / valor en un navegador web i emmagatzema dades sense data de caducitat. localStorage només es pot accedir mitjançant JavaScript i HTML5. Tanmateix, l’usuari té la possibilitat d’esborrar les dades / memòria cau del navegador per esborrar totes les dades localStorage L’emmagatzematge web es pot visualitzar de manera simplista com una millora de les cookies, proporcionant una capacitat d’emmagatzematge molt més gran La mida disponible és de 5 MB, que és més espai per treballar amb una galeta típica de 4 KB. A més de localStorage, les dades no es remeten al servidor per a cada sol·licitud HTTP (HTML, imatges, JavaScript, CSS, etc.), la qual cosa redueix la quantitat de trànsit entre client i servidor. Finalment, funciona amb la política del mateix origen, de manera que les dades emmagatzemades només estaran disponibles al mateix origen.

Diferències entre cookies i emmagatzematge local

Les cookies i l’emmagatzematge local serveixen diferents finalitats. Les cookies serveixen principalment per llegir el servidor, mentre que l'emmagatzematge local només pot ser llegit per part del client. A banda de guardar dades, una gran diferència tècnica és la mida de les dades que podeu emmagatzemar i, com he esmentat anteriorment, localStorage us proporciona més coses per treballar. En conclusió, la pregunta que cal fer amb els dos és, a la vostra aplicació, qui necessita aquestes dades, el client o el servidor?