目前,我正在为我的项目和该项目工作 运用 rails_api gem。我想添加会话管理进行身份验证,但是 它 似乎会议不起作用。这是我的配置 配置/初始化/ session_store.rb:
Pmcapi::Application.config.session_store :cookie_store, {
key: '_pmcapi_session',
expire_after: 1.hour
}
在我的session_controller中,我添加会话到商店令牌
(在session_controller.rb中)
def create
#just to generate new token
user.reset_sso_token!
session[:token] ||= user.sso_token
self.current_user = user
redirect_to root_path
end
when i am in application_controller, i want to access session[:token]
but
the result is nil (in application_controller.rb)
def authenticate_user!
#puts("User Authentication")
#puts(request.authorization)
#puts(request)
@user = User.authenticate_with_token(session[:token])
#head :unauthorized unless @user.present?
redirect_to sign_in_path if @user.nil?
end
拜托,我需要帮助。我坚持这一点,谢谢
答案 0 :(得分:0)
您是否按照documentation中的说明在配置文件中添加了config.api_only = false
?
会话管理:如果提供了config.session_store并且 config.api_only = false,此中间件使会话可用 作为ActionController中的会话方法。