Question HTML5 Stockage local contre stockage en session


En plus d'être non persistant et limité à la fenêtre actuelle, y a-t-il des avantages (performance, accès aux données, etc.) pour le stockage de session sur le stockage local?


423
2018-04-02 12:30


origine


Réponses:


localStorage et sessionStorage les deux s'étendent Storage. Il n'y a pas de différence entre eux sauf pour la "non-persistance" prévue de sessionStorage.

Autrement dit, les données stockées dans localStorage persiste jusqu'à suppression explicite. Les modifications apportées sont enregistrées et disponibles pour toutes les visites actuelles et futures sur le site.

Pour sessionStorage, les modifications ne sont disponibles que par fenêtre (ou onglet dans les navigateurs comme Chrome et Firefox). Les modifications apportées sont enregistrées et disponibles pour la page en cours, ainsi que les futures visites sur le site sur la même fenêtre. Une fois la fenêtre fermée, le stockage est supprimé.


575
2018-04-02 12:34



La seule différence est que localStorage a un temps d'expiration différent, sessionStorage ne sera accessible que pendant et par la fenêtre qui l'a créé est ouvert.
localStorage dure jusqu'à ce que vous le supprimiez ou que l'utilisateur le supprime.
Disons que vous vouliez enregistrer un nom d'utilisateur et un mot de passe que vous souhaitez utiliser sessionStorageplus de localStorage pour des raisons de sécurité (c.-à-d. une autre personne accédant ultérieurement à son compte).
Mais si vous souhaitez enregistrer les paramètres d'un utilisateur sur sa machine, vous voudrez probablement localStorage. En tout:

localStorage - utiliser pour une utilisation à long terme.
sessionStorage - Utilisez quand vous avez besoin de stocker quelque chose qui change ou quelque chose de temporaire


132
2018-03-01 21:05



Quelques autres points qui pourraient être utiles pour comprendre les différences entre le stockage local et le stockage de session

  1. Le stockage local et le stockage de session sont tous deux limités à l'origine des documents.

    https://mydomain.com/ 
    http://mydomain.com/ 
    https://mydomain.com:8080/

    Toutes les URL ci-dessus seront ne pas partager le même stockage. (Le chemin de notification de la page Web n'affecte pas le stockage Web)

  2. Le stockage de session est différent même pour le document avec la même politique d'origine ouverte dans différents onglets, donc la même page web s'ouvre dans deux onglets différents ne peux pas partager le même stockage de session.

  3. Le stockage local et le stockage de session sont également définis par fournisseurs de navigateurs. Les données de stockage enregistrées par IE ne peuvent donc pas être lues par Chrome ou FF.

J'espère que cela t'aides.


94
2018-02-06 17:22



La principale différence entre localStorage et sessionStorage est-ce sessionStorage est unique par onglet. Si vous fermez l'onglet, le sessionStorage est supprimé, localStorage ne fait pas. De plus, vous ne pouvez pas communiquer entre les onglets :)

Une autre différence subtile est que par exemple sur Safari (8.0.3) localStorage a une limite de 2551 k caractères, mais sessionStorage a stockage illimité

Sur Chrome (v43) localStorage et sessionStorage sont limités à 5101 k caractères (pas de différence entre le mode normal / privé)

Sur Firefox à la fois localStorage et sessionStorage sont limités à 5120 k caractères (pas de différence entre le mode normal / incognito)

Aucune différence de vitesse que ce soit :)

Il y a aussi un problème avec Mobile Safari et Chrome Mobile, le mode privé Safari et Chrome ont un espace maximum de 0 Ko


25
2018-06-26 10:03



Stockage local peut stocker jusqu'à 10mb données hors connexion (en chrome 10 mb, dans d'autres navigateurs 5 mb), tandis que stockage de session peut stocker jusqu'à 5 Mo de données. Mais les cookies ne peuvent stocker que des données de texte 4kb. Voir plus de détails ici


10
2017-08-05 09:07



En ce qui concerne les performances, mes mesures (grossières) n’ont révélé aucune différence sur 1 000 écritures et lectures.

Du point de vue de la sécurité, intuitivement, il semblerait que le magasin local soit fermé avant le magasin de sessions, mais il n'a aucune preuve concrète - peut-être que quelqu'un d'autre le fait?

fonctionnel, d'accord avec digitalFresh ci-dessus


9
2018-04-02 12:36



sessionStorage est identique à localStorage, sauf qu'il stocke les données pour une seule session et qu'il sera supprimé lorsque l'utilisateur fermera la fenêtre du navigateur qui l'a créé.


9
2018-04-07 10:29



Le stockage de session et le stockage local ont le même comportement sauf un stockage local qui stocke les données jusqu'à ce que l'utilisateur supprime le cache et les cookies et les données de stockage de session restent dans le système jusqu'à ce que nous fermions la session jusqu'à ce que nous fermions la fenêtre de stockage de session créée.


6
2017-07-30 09:28



L'avantage du stockage de session sur le stockage local, à mon avis, est qu'il a capacité illimitée dans Firefox, et ne persisteront pas plus longtemps que la session. (Bien sûr, cela dépend de votre objectif.)


5
2018-06-18 11:52



Il n'y a pas de différence entre les extensions Storage, mais le sessionStorage pour la session (onglet ou pour la fenêtre) et localStorage existe pour le domaine jusqu'à ce qu'il soit explicitement supprimé (appel de la méthode clear ou effacement de l'argent du navigateur).

Lisez cet article: http://fend-tricks.com/html5-web-storage/


4
2018-02-11 06:21