设计登录自定义端点,current_user会话ID

时间:2015-07-16 17:59:02

标签: ruby-on-rails session devise

我有一个需要登录旧版Rails 3.2应用程序的移动应用程序。

我有一个端点,移动应用程序发出POST请求以传递用户名和密码。

我想验证密码并登录用户,然后需要保存现已签名的用户的会话ID。

我尝试了以下内容:

user = User.find_by_username(params[:username])
if user.valid_password?(params[:password])
  sign_in(:user, user)
  session_id = request.session_options[:id]
  p "session id: #{session_id}"
  current_user.logins.create({ session_id: session_id })
end

当我检查我的redis商店时,存储的会话ID与我打印的session_id不同。我在某处读到这是因为rails为请求创建会话ID,然后一旦您登录,您将获得一个新的会话ID以防止虚假请求。如何获得已登录用户的session_id?

0 个答案:

没有答案