Go Gorilla Mux Название сессии

Мне трудно понять гориллу muxИмя сеанса.

http://www.gorillatoolkit.org/pkg/sessions

var store = sessions.NewCookieStore([]byte("something-very-secret"))

func MyHandler(w http.ResponseWriter, r *http.Request) {
    // Get a session. We're ignoring the error resulted from decoding an
    // existing session: Get() always returns a session, even if empty.
    session, _ := store.Get(r, "session-name")
    // Set some session values.
    session.Values["foo"] = "bar"
    session.Values[42] = 43
    // Save it.
    session.Save(r, w)
}

Я хочу использовать сессию, чтобы избежать использования глобальных переменных между двумя обработчиками. Поэтому я сохраняю значение ключа в общем сеансе и извлекаю значение из сеанса.

И мне интересно, хочу ли я, чтобы у каждого пользователя был свой уникальный сеанс и его Valuesмне нужно назначить уникальное имя сеанса (идентификатор сеанса)? Или сеанс гориллы обрабатывает сам, что каждый пользователь получает свой собственный сеанс и значения?

Интересно, нужно ли мне генерировать имена сеансов с уникальными идентификаторами.

Спасибо

1 ответ

Решение

Данные сеанса хранятся в cookie-файлах клиента. Таким образом, сессия, которую вы получаете с store.Get(r, "session-name") читает куки данного клиента (запрос) Вам не нужны уникальные имена. Имя в этом случае - это имя файла cookie, поэтому оно будет уникальным для запроса.

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