1: Le premier point que vous voulez connaître la même technologie doit comprendre sa philosophie, qui est, ce qui est le point de cette technologie est son existence afin de résoudre le problème et ce qui est né?
Parce que HTTP est sans connexion, lorsque la demande se termine la connexion est interrompue, il causera des problèmes d'identification.
Ainsi est né le cookie même dans localStorage avant l'apparition des fonctions du navigateur comptent sur le stockage des cookies pour complète
Mais il est simple, en principe, à l'explosion, en disant que lorsque le navigateur accède au serveur, le serveur envoie un cookie au navigateur
Peut être compris comme un identifiant, la prochaine fois que le navigateur porte à nouveau l'identifiant (cookies) dans le paquet de liaison montante lorsque le serveur envoie une requête
Identification du serveur peut être basé sur l'identifiant lorsque le serveur kookie fourni dans la durée de paquets en liaison descendante
Le navigateur pour accéder au serveur dans un certain laps de temps transportera ce cookie, les cookies de prétendu Kookie, biscuits salés ne étrangers aiment prendre un souvenir
Alors kookie est un navigateur souvenir pour communiquer avec le serveur, s'il est possible que les Chinois ont inventé le jargon, cette fondation est d'établir un Aucune connexion HTTP
2: Quelle est donc la session, il a été dit que la session est très abstraite et difficile à comprendre, en fait, le contraste de cookie de session une meilleure compréhension plus facile
cookies requis serveur dans le paquet de liaison descendante est définie, la session complètement sans, dépend du cookie de session est un cookie peut même
Il suffit de faire une simple mise à jour, il y a un proxy concept unique
C'est lorsque le premier navigateur envoie une requête au serveur, le serveur ne reconnaît pas le navigateur, car le navigateur ne portait pas le cookie jeton paquet de liaison montante
Cette fois, vous devez configurer le serveur, le navigateur retourne un jeton au prochain cookie de navigateur ne vient pas savoir?
Mais le problème est que certaines personnes pensent ce cookie jeton mis serveur multiple, mais trop simple, si la session est apparu
Le serveur peut activer ou désactiver chaque session, par exemple sous la langue ne sont pas les mêmes.
Si vous configurez le serveur ouvert la session, le serveur de temps génère une chaîne aléatoire de charabia selon l'algorithme de hachage en mémoire
En même temps, ces tas de paquets de liaison descendante charabia envoyé au navigateur, tout cela est transparent, ce qui est, ne pas vous mettre en place un programmeur, je l'ai fait automatiquement le serveur
Ou qui va sur le serveur au navigateur un souvenir, il a pris la chaîne de charabia pour comparer avec la mémoire du serveur brouillées navigateur suivant
Tout comme les mots de noir, à droite sur le bouton OK, en fait, vous n'êtes pas vos serveurs qui les contrôlent, juste pour le slogan.
Par exemple, je débarquai jardin blog, serveur de blog de jardin m'a envoyé un tas de charabia, cette fois, vous serez en mesure de tenir cette chaîne de charabia atterrissage mon arrière-plan.
Pendant ce temps serveur basé sur cette chaîne de charabia dans le cache de la structure de hachage certaines des informations, tant que le navigateur pour accéder au serveur, puis à droite sur le noir
Ensuite, vous pouvez lire les informations en mémoire.
Node.js en audience publique, le serveur envoie un navigateur pour accéder à chaque serveur un cookie au navigateur comme un souvenir, brouillées
var express = nécessitent ( "express" ); var formidables = exigent ( "formidable" ); var = session nécessitent ( 'exprimer session' ) var app = exprimer (); app.set ( "moteur de vue", "EJS" ); // 开启唯一代理session de app.set ( 'proxy confiance', 1 ); app.use (session ({ secret: 'lalala' , saveUninitialized: true , cookie: {maxAge: 86400 } })); // 首页 app.get ( "/", la fonction (req, res.render ( "shouye" ); }); app.post ( "/ login", la fonction (req, res) { }); app.listen ( 3000);
Nous pouvons faire certaines opérations en fonction des caractéristiques du cache de session
var express = require ( "Express" ); var formidable = require ( "formidable" ); var la session = require (la session Express ' ) var App = Express (); app.set ( "View Engine", "EJS" ); app.set ( Trust Proxy ',. 1 ); app.use (la session ({ secret: 'lalala' , saveUninitialized: true , cookie: {le maxAge: 86400 } })); // Accueil app.get ( " / », la fonction (REQ, RES) { // modèle de présentation, les informations de connexion est également apporter: res.render ( "shouye" , { connexion: req.session.login, yonghuming: req.session.name, Anlian: req.session.love }); }); // 登录 app.post ( "/ login", la fonction (req, res) { var form = nouvelle formidable.IncomingForm (); form.parse (req, fonction (err, champs) { req.session.login = true ; req.session.name = fields.name; req.session.love = fields.love; res.redirect ( "/" ); }); }); app.listen ( 3000);