我有一个基于子域的rails应用程序。它还包含REST API,可以公开访问我们的客户。我有另一个客户端应用程序,通过它我可以访问主应用程序的REST API。
当我在同一浏览器上访问这两个应用程序并登录主应用程序时,我无法访问客户端应用程序中不同子域的REST API,因为cookie会根据访问的域进行存储。
有没有办法根据子域区分cookie。
提前致谢。
答案 0 :(得分:1)
您应将Cookie的域设置为 .yourdomain.com ,以便为主域和所有子域设置Cookie。
config / initializers / session_store.rb上的Rails 3:
Rails.application.config.session_store :cookie_store, :key => '_my_key', :domain => ".yourdomain.com"
config / environment.rb上的Rails 2.3+:
config.action_controller.session = { :key => '_my_key', :domain => '.yourdomain.com' }