我知道它的回复很晚,但我在互联网上没有找到任何回答这个问题的东西。
我的问题是应用程序总是在子路径上运行,但会话 cookie 总是发给 / 对我来说,这是通过设置和使用您的特定问题来解决的,您可以从方法中给出的对象中Rails.application.config.x.base_url
找出要设置的路径request
这需要添加到您的 rails Applcation 的新文件中./config/initializers/session_store.rb
module SessionPath
extend ActiveSupport::Concern
def self.included(base)
base.class_eval do
alias_method :set_cookie_original, :set_cookie
alias_method :set_cookie, :set_cookie_extended
end
end
def set_cookie_extended(request, session_id, cookie)
cookie[:path] = Rails.application.config.x.base_url #or what you need
set_cookie_original(request, session_id, cookie)
end
end
ActionDispatch::Session::AbstractStore.send(:include, SessionPath)