0

我在 Sinatra 中设置持久性 cookie 时遇到问题:

我有两条设置相同密钥的路线:

response.set_cookie('user_id',
                    { :value => params[:user_id], 
                      :expires => Time.now + (60 * 60 * 24 * 30), 
                      :path => '/'  })

两条路线的唯一区别是一条是 POST,另一条是 GET。在这两种情况下,我都将 cookie 的路径设置为“/”。

当我尝试在另一条路线中检索 cookie 值时:

user_id = cookies[:user_id]

我总是得到我通过 POST 路由设置的 cookie,即使我后来使用 GET 路由覆盖它。

我无法为 Sinatra 的这方面找到好的文档,因此我们将不胜感激。

4

1 回答 1

0

你必须使用

user_id = request.cookies[:user_id]
于 2013-09-18T08:45:56.533 回答