Sinatra – response.set_cookie不起作用

我需要为我的Sinatra应用程序使用cookie。 如果我使用最简单的方法是有效的:

response.set_cookie('my_cookie', 'value_of_cookie') 

但我需要一些选项,如域名和过期日期,所以我试试这个:

 response.set_cookie("my_cookie", {:value => 'value_of_cookie', :domain => myDomain, :path => myPath, :expires => Date.new}) 

不起作用。 没有cookie。 我需要这么多……

请帮忙……谢谢!

http://sinatra-book.gittr.com/#cookies上的文档说使用set_cookie帮助程序,但是在较新版本的Sinatra中(至少从1.2.0+开始,可能更早),你应该使用response.set_cookie来设置cookie。

 response.set_cookie("my_cookie", :value => "value_of_cookie", :domain => myDomain, :path => myPath, :expires => Date.new(2020,1,1)) cookie = request.cookies["my_cookie"] 

摘要

不要将localhost设置为cookie的域,因为您需要将其设置为“”或FALSE