1

我在 Go 中使用 gin-gonic 并使用github.com/gin-gonic/contrib/sessions包中提供的 Redis 会话功能

store, _ := sessions.NewRedisStore(10, "tcp", "localhost:6379", "", []byte("secret"))
router.Use(sessions.Sessions("workino_session", store))

如何控制这些 Session 在 Redis 中存储多长时间?

谢谢你。

4

1 回答 1

2

尽管 README 文档很少,但GoDoc 文档对此更清楚一些。

请注意,gin-gonic 会话包在下面使用gorilla/sessions并共享相同的选项 API。

// We check for errors.
store, err := sessions.NewRedisStore(10, "tcp", "localhost:6379", "", []byte("secret"))
if err != nil {
    // Handle the error. Probably bail out if we can't connect.
}

// Ref: https://godoc.org/github.com/gin-gonic/contrib/sessions#Options
store.Options = &sessions.Options{
    MaxAge: 86400,
    Path: "/",
    Secure: true,
    HttpOnly: true,
}

// Use the store once configured.
router.Use(sessions.Sessions("workino_session", store))
于 2016-02-18T17:39:11.060 回答