【发布时间】:2017-07-20 01:50:23
【问题描述】:
我有一个关于会话的一般性问题。谈到这个话题,我不是很老练。我试过了:
NewRediStore (gopkg.in/boj/redistore.v1)
NewCookieStore
NewFileSystemStore
我的印象是会话可以在服务器重新启动之间持续,因此需要一个“存储”。当我的 golang 后端运行时,我可以设置新会话并为多个用户/浏览器检索它们。那里没有问题。
当我重新启动我的服务器时,我注意到所有会话访问都会导致session.IsNew == true。
在 Redis 中,我可以看到重启后的所有会话密钥,甚至验证了 .Getting 会话导致检索到正确的 ID,但仍然设置了 IsNew。
我凭直觉猜测,这是有道理的,因为内存中必须有一些映射导致 IsNew 的设置,但我认为如果存储中的 cookie 键有任何命中,IsNew 不应该被设置。我要疯了吗?我做错了什么容易吗?这是对如何使用会话的根本误解吗?
如果我需要包含代码或其他详细信息,请告诉我。
【问题讨论】: