Gorilla Sessions 웹 툴킷을 사용하는 동안 요청 전반에 걸쳐 세션 변수가 유지되지 않습니다. 서버가 시작되고 사용자가 localhost:8100/을 방문하면 세션 값이 존재하지 않기 때문에 login.html로 이동됩니다. 로그인하면 세션 변수가 저장되고 사용자는 home.html로 리디렉션됩니다. 그러나 새 탭을 열고 localhost:8100/을 입력하면 세션 변수가 있음에도 불구하고 예상대로 home.html 대신 login.html로 이동하게 됩니다.
몇 가지 문제가 발생합니다. 제공된 코드:
관련 코드 조각(문제 해결 후):
<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>
위 내용은 내 웹 애플리케이션의 요청 전반에 걸쳐 Gorilla 세션 변수가 유지되지 않는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!