Ruby on rails 使用域选项在rails中设置cookie
我正在尝试在一个域中设置cookie并从另一个域访问它。这可能吗 以下是我在应用程序中的操作: 在控制器中,通过以下url访问测试操作: 在同一控制器中,通过以下url访问test2操作: 但是cookies[:foo]的值始终为空。是否可以从heroku.com域访问cookie。我认为设置:domain选项将允许这样做Ruby on rails 使用域选项在rails中设置cookie,ruby-on-rails,heroku,Ruby On Rails,Heroku,我正在尝试在一个域中设置cookie并从另一个域访问它。这可能吗 以下是我在应用程序中的操作: 在控制器中,通过以下url访问测试操作: 在同一控制器中,通过以下url访问test2操作: 但是cookies[:foo]的值始终为空。是否可以从heroku.com域访问cookie。我认为设置:domain选项将允许这样做 谢谢 您不能对其他域执行此操作,但可以对子域执行此操作。那么比如说,, 在domain example.com上运行的应用程序可以为subdomain.example.com
谢谢 您不能对其他域执行此操作,但可以对子域执行此操作。那么比如说,, 在domain example.com上运行的应用程序可以为subdomain.example.com设置cookie,但不能为exampleapp.com设置cookie 我必须补充一点,如果有可能为其他任意域设置cookie,那么将存在巨大的安全/隐私问题 通过在environment.rb中执行以下操作,可以为所有域设置相同的cookie:
ActionController::CgiRequest::DEFAULT_SESSION_OPTIONS[:session_domain => '.mydomain.com']
有关文档,请参阅。您不能对其他域执行此操作,但可以对子域执行此操作。那么比如说,, 在domain example.com上运行的应用程序可以为subdomain.example.com设置cookie,但不能为exampleapp.com设置cookie 我必须补充一点,如果有可能为其他任意域设置cookie,那么将存在巨大的安全/隐私问题 通过在environment.rb中执行以下操作,可以为所有域设置相同的cookie:
ActionController::CgiRequest::DEFAULT_SESSION_OPTIONS[:session_domain => '.mydomain.com']
有关文档,请参阅。域选项和在Cookie上设置域通常只能跨子域工作。i、 e.对于app1.mysite.com和app2.mysite.com,您可以将cookie域设置为.mysite.com,并在子域之间共享 这正是cookies的工作原理。myapp.com和myapp.heroku.com是独立的域,而不是子域,因此尝试以这种方式设置域是行不通的
有一些方法可以实现真正的跨域Cookie-但它们是:域选项和在Cookie上设置域通常只在子域中有效。i、 e.对于app1.mysite.com和app2.mysite.com,您可以将cookie域设置为.mysite.com,并在子域之间共享 这正是cookies的工作原理。myapp.com和myapp.heroku.com是独立的域,而不是子域,因此尝试以这种方式设置域是行不通的
有一些方法可以实现真正的跨域Cookie-但是它们是你可能想签出你可能想签出而且,有些浏览器或插件可能不允许你的应用程序这样做。。。但我不确定。而且,可能有些浏览器或插件不允许你的应用程序这么做。。。但我不确定。
ActionController::CgiRequest::DEFAULT_SESSION_OPTIONS[:session_domain => '.mydomain.com']