25
我覺得我在這裏錯過了一些明顯的東西,而且我希望只要我發佈這篇文章,就會讓我失望的是我缺少的Google搜索鏈接:-)使用Rack :: Session :: Cookie刪除當前會話
enable :sessions
get '/logout' do
# What goes here to kill the session?
end
我覺得我在這裏錯過了一些明顯的東西,而且我希望只要我發佈這篇文章,就會讓我失望的是我缺少的Google搜索鏈接:-)使用Rack :: Session :: Cookie刪除當前會話
enable :sessions
get '/logout' do
# What goes here to kill the session?
end
只需使用
session.clear
摧毀了會議。
這取決於您如何創建會話。你只需要禁止會話輸入。這裏是一個簡單的例子,如何創建和銷燬會話。
get '/login' do
session[:username] = params[:username]
"logged in as #{session[:username]}"
end
get '/logout' do
old_user = session[:username]
session[:username] = nil
"logged out #{old_user}"
end
您還可以檢查這個例子:https://gist.github.com/131401
嗯,我曾嘗試過,但在我「註銷」後,rack.session cookie仍然存在。 – ecoffey 2010-11-23 22:39:17
@ecoffey你確定它是同一個cookie嗎?如果你使用`session.clear`,它可能會是一個新的會話,但舊的會被破壞。無會話密鑰可能會保留原始cookie,但是沒有任何值。 – xentek 2014-02-28 03:50:06