Cookies 浏览器关闭后立即过期的Rails cookie?

Cookies 浏览器关闭后立即过期的Rails cookie?,cookies,session-cookies,ruby-on-rails-5.2,ruby-on-rails-6,Cookies,Session Cookies,Ruby On Rails 5.2,Ruby On Rails 6,两者的区别是什么 cookies.permanent[:auth_token] = user.auth_token 及 在轨道上 如何设置浏览器一关闭即过期的cookie,如会话 我的会话控制器: class SessionsController < ApplicationController def new end def create user = User.find_by_email(params[:email])

两者的区别是什么

    cookies.permanent[:auth_token] = user.auth_token 

在轨道上

如何设置浏览器一关闭即过期的cookie,如会话

我的会话控制器:

   class SessionsController < ApplicationController
    def new
    end

    def create
      user = User.find_by_email(params[:email])
      if user && user.authenticate(params[:password])

        if params[:remember_me]
          cookies.permanent[:auth_token] = user.auth_token
        else
           cookies[:auth_token] = user.auth_token
        end 
        redirect_to user
        flash[:success] = 'Logged in successfully.'

      else
        render 'new'
      end
    end


   def destroy
       @current_user = nil
       cookies[:auth_token] = nil
       reset_session
       redirect_to root_path
   end

end
class sessioncontroller
请注意,某些浏览器的某些设置不会自然关闭“会话”。他们可以永远保存饼干!那么,“记住我”有什么意义呢?如果我勾选(复选框),它会记得,如果我不记得,它会记得?一些浏览器会在整个浏览器关闭时销毁会话cookie(这种情况很少发生,因为一些ppl只会保持浏览器活动并打开和关闭窗口)。但是,浏览器的“恢复以前的状态”(restore previous state of browser)完全破坏了这一概念,它以与以前关闭时完全相同的windows w/相同的URL开始。所以这在很大程度上取决于用户设置。
   class SessionsController < ApplicationController
    def new
    end

    def create
      user = User.find_by_email(params[:email])
      if user && user.authenticate(params[:password])

        if params[:remember_me]
          cookies.permanent[:auth_token] = user.auth_token
        else
           cookies[:auth_token] = user.auth_token
        end 
        redirect_to user
        flash[:success] = 'Logged in successfully.'

      else
        render 'new'
      end
    end


   def destroy
       @current_user = nil
       cookies[:auth_token] = nil
       reset_session
       redirect_to root_path
   end

end