Maison >développement back-end >Golang >Pourquoi les variables Gorilla Sessions ne sont-elles pas conservées dans les requêtes de mon application Web ?
Lors de l'utilisation de la boîte à outils Web Gorilla Sessions, les variables de session ne sont pas conservées dans les requêtes. Lorsque le serveur démarre et que les utilisateurs visitent localhost:8100/, ils sont dirigés vers login.html car les valeurs de session n'existent pas. Lors de la connexion, les variables de session sont stockées et les utilisateurs sont redirigés vers home.html. Cependant, ouvrir un nouvel onglet et saisir localhost:8100/ dirige les utilisateurs vers login.html au lieu de home.html comme prévu, malgré la présence de variables de session.
Plusieurs problèmes surviennent dans le code fourni :
Extraits de code pertinents (après avoir résolu les problèmes) :
<code class="go">// Set session options store.Options = &sessions.Options{ Domain: "localhost", Path: "/", MaxAge: 3600 * 8, // 8 hours HttpOnly: true, } // Session handling in `SessionHandler` func SessionHandler(res http.ResponseWriter, req *http.Request) { session, err := store.Get(req, "loginSession") if err != nil { // Handle the error } // Check for a valid session if session.Values["email"] == nil { http.Redirect(res, req, "html/login.html", http.StatusFound) } else { http.Redirect(res, req, "html/home.html", http.StatusFound) } }</code>
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!