我在nodejs app上设置了最小的连接会话:
connect.cookieParser(),
connect.session({ secret: 'asdfg', cookie: { maxAge: 60 * 60 * 1000 }}),
但是当在其他机器上测试我的网站时,会话cookie根本没有设置。在我的Mac上,会话cookie在Chrome和Firefox中都正常设置。在我的虚拟Windows上,会话cookie无法在Chrome或Firefox上设置。在一个朋友的Windows上,会话显然也没有设置,但在另一个朋友的Windows上,会话似乎正在运行。我已经在我的虚拟Windows Chrome上检查了Cookie设置和标题,但似乎没有什么不同,它只是拒绝创建Cookie ...
任何想法为什么会话cookie显然会在某些机器而不是其他机器上设置?
答案 0 :(得分:3)
在发布后不久,答案终于明白了......
始终检查您的系统时区或您的会话可能会立即到期。即使时间合适,时区也会偏离会话使用的UTC时间。它会影响任何会话的到期时间,但设置为仅在一两个小时内到期的会话可能根本不会设置。