Эхо не очищает сессию

Я использую 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"

1 ответ

Решение

Проблема в клиентской части. Браузеры игнорируют Set-Cookie в ответе на перенаправление, когда доменом cookie является localhost. Поэтому я должен использовать 127.0.0.1 вместо localhost.

Другие вопросы по тегам