La différence entre la Session de Stockage, Locaux de Stockage et les Cookies dans AngularJS
Je voudrais creuser dans Angulaire, et pour cela je voudrais savoir la différence entre la Session de Stockage, Locaux de Stockage et les Cookies.
Problème De Questions ---
1) $windows.sessionStorage peut être utilisé pour stocker de la session de l'utilisateur, mais le problème c'est que quand vous ouvrir quelque chose dans un nouvel onglet de nouveau demander à l'utilisateur de se connecter.
2) Locaux de Stockage serait une solution à la question 1 ? et si oui, est-ce que j'ai besoin de locaux de stockage et de stockage de session à la fois dans mon application ou le stockage local servira de stockage de session.
3) je travaille aussi sur se Souvenir de moi sur mon formulaire de connexion - est-il sûr pour stocker le mot de passe et l'adresse email de l'utilisateur dans le local de stockage pour cela, si ce n'est ce qui est le meilleur moyen de le faire se souvenir de moi dans angulaire
4) les Cookies sont grands, mais les entreprises les entreprises leur permet y navigateur?
En espérant trouver la bonne réponses
Grâce
OriginalL'auteur GeekOnGadgets | 2014-10-03
Vous devez vous connecter pour publier un commentaire.
1) Il est vrai que
sessionStorage
est temporaire, et il a été conçu pour le faire.2) Locaux de stockage permettra de résoudre le problème de la connexion avec une nouvelle session de navigateur ouvert ou après une longue attente, mais non,
localStorage
n'agira pas comme un cookie de session pour les requêtes du navigateur.3) Beaucoup de différentes applications côté serveur prend en charge le cryptage et inviolable de cookie support pour les applications. Cela étant dit, il est toujours préférable de ne pas stocker les mots de passe utilisateur dans le client, peut-être un jeton peut-être que votre serveur se reconnaître et d'être capable de déchiffrer/décodage et de rechercher le bon enregistrement de l'utilisateur.
4) je dirais que de nos jours oui, les cookies sont généralement reconnus pour être sûr, mais c'est toujours une possibilité, et en fonction de vos clients ou le public que vous pourriez avoir un problème. Également des séances ne fonctionnera pas si les cookies sont désactivés dans le navigateur. (Bien que mon outlook sur c'est de la spéculation sur une population générale, c'est à dire: ne pas me citer)
Ma recommandation pour vos besoins est de définir une variable de session lorsque l'utilisateur rencontre de la page. Puis stocker le résultat dans localStorage ou avec un cookie, et ensuite, lorsque l'utilisateur revient à l'application après la session est mort, avoir de l'architecture jusqu'à se ré-authentifier et de ré-attribuer la session automatiquement.
Espérons que cette aide!
Edit: les Cookies de Session sont partagés entre le navigateur onglets dans la même fenêtre. Cependant de Stockage de Session a été souligné ne pas être.
Qui est impair. Quel navigateur utilisez-vous? ou avez-vous remarqué cela dans tous les navigateurs?
Stockage de Session est limitée à un particulier onglet/fenêtre et il n'est pas partagé entre les onglets du navigateur, même si ils ont accès à la même URI. Si vous avez besoin de partager quelque chose entre les deux onglets ou fenêtres, vous devez utiliser
localStorage
. Remarque, même sur les règles d'origine s'appliquent toujours.oui avec tous les navigateurs.
J'ai corrigé mes déclarations que Stockage de Session apparemment, n'a pas de transfert entre les onglets, cependant, les Cookies de Session ne.
OriginalL'auteur SnareChops
localstorage fonctionnent sur onglets:
Il y a une démo ici:
http://www.undefinednull.com/2014/02/25/angularjs-real-time-model-persistence-using-local-storage/
OriginalL'auteur Paul B. Hartzog