Ruby on rails 设计登录自定义端点,当前用户会话id

Ruby on rails 设计登录自定义端点,当前用户会话id,ruby-on-rails,session,devise,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_

我有一个移动应用程序,需要登录到传统的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与我打印的会话id不同。我在某个地方读到,这是因为rails为请求创建了一个会话id,然后一旦您登录,您就会获得一个新的会话id以防止虚假请求。如何获取已登录用户的会话\u id