Задать вопрос
@Kagtaviy

Как работать с сессиями в golang?

Здравствуйте, прошу помощи в объяснение принципа работы с сессиями.
Не могу понять принцип работы с сессиями(Испльзую Gorilla sessions и redis).
Вот например:
Делаю авторизацию пользователя. Пользователь вводить данные, потом они сверяются с БД и если все правильно то должна генерироваться сессия? Предположим мы сгенерировали сессию, а что дальше, грубо говоря как понять что Иван это Иван а не Коля?
Следуйщий вопрос, за что отвечает "something-very-secret" в переменной store и зачем он нужен?
var store = sessions.NewCookieStore([]byte("something-very-secret")) // что это за secret key и зачем он используется

    func MyHandler(w http.ResponseWriter, r *http.Request) {
        session, _ := store.Get(r, "session-name")
        session.Values["foo"] = "bar"
        session.Values[42] = 43
        session.Save(r, w)
    }

И последний вопрос, на странице Gorilla sessions наткнулся на пакет https://github.com/boj/redistore , зачем он нужен?
Заранее спасибо!
  • Вопрос задан
  • 6552 просмотра
Подписаться 3 Оценить Комментировать
Ответ пользователя fastpars К ответам на вопрос (3)
fastpars
@fastpars
как понять что Иван это Иван а не Коля

session.Values["userID"] = "some-user-id"

// что это за secret key и зачем он используется

Используется для шифрования сессии. Можт принимать любое значение.

https://github.com/boj/redistore

Для хранения сессий в редисе ) ...
Ответ написан
Комментировать