Echo 没有清除会话
Echo is not clearing the session
我正在为我的 Web 应用程序使用 Echo。我试图实现登录和注销。当我尝试注销时,它不会清除会话。这是我的代码:
func Logout(c echo.Context) error {
sess, _ := session.Get("session", c)
sess.Options = &sessions.Options{
Path: "/",
MaxAge: -1,
HttpOnly: true,
}
sess.Values["username"] = ""
sess.Values["authenticated"] = ""
sess.Save(c.Request(), c.Response())
return c.Redirect(http.StatusSeeOther, "/")
}
注销后我检查了会话值,它没有改变或清除任何东西。我正在使用这些包进行会话管理:
"github.com/labstack/echo-contrib/session"
"github.com/gorilla/sessions"
问题出在客户端。当 cookie 的域是本地主机时,浏览器将忽略重定向响应中的 Set-Cookie。所以我必须使用 127.0.0.1 而不是本地主机。
我正在为我的 Web 应用程序使用 Echo。我试图实现登录和注销。当我尝试注销时,它不会清除会话。这是我的代码:
func Logout(c echo.Context) error {
sess, _ := session.Get("session", c)
sess.Options = &sessions.Options{
Path: "/",
MaxAge: -1,
HttpOnly: true,
}
sess.Values["username"] = ""
sess.Values["authenticated"] = ""
sess.Save(c.Request(), c.Response())
return c.Redirect(http.StatusSeeOther, "/")
}
注销后我检查了会话值,它没有改变或清除任何东西。我正在使用这些包进行会话管理:
"github.com/labstack/echo-contrib/session"
"github.com/gorilla/sessions"
问题出在客户端。当 cookie 的域是本地主机时,浏览器将忽略重定向响应中的 Set-Cookie。所以我必须使用 127.0.0.1 而不是本地主机。