【发布时间】:2016-09-03 13:13:42
【问题描述】:
我正在使用 Sinatra 和 Ruby 开发一个 Web 应用程序。我需要设置一个可从所有子域访问的 cookie。我原来的代码是这样的:
@language = 'en-US'
cookies[:USER_LANGUAGE] = @language
这产生了预期的效果(例如,将 cookie “USER_LANGUAGE”设置为等于“en-US”
但是,并非所有子域都可以访问它。看了How to set a cookie on a separate domain in Rails等类似问题后,我试过这个:
@language = 'en-US'
cookies[:USER_LANGUAGE] = {
:value => @language,
:domain => '.example.com'
}
当我检查 cookie 数据时,它设置完全错误。 cookie的值就是括号内的一切,域还是只有example.com(不是.example.com)
这是产生的价值:
%7B%3Avalue%3D%3E%22en-US%22%2C+%3Adomain%3D%3E%22.example.com%22%7D
【问题讨论】: