Чтобы включить сеансы в приложении Ruby Sinatra, вы можете использовать метод enable
вместе с опцией sessions
. Включение сеансов позволяет хранить и получать данные пользователя по нескольким HTTP-запросам. Вот пример того, как включить сеансы в Sinatra:
require 'sinatra'
enable :sessions
get '/login' do
# Store a value in the session
session[:user_id] = 123
# Retrieve the value from the session
user_id = session[:user_id]
# Perform other login-related actions
"Logged in as user #{user_id}"
end
get '/logout' do
# Clear the session data
session.clear
"Logged out"
end
В приведенном выше примере строка enable :sessions
включает сеансы в приложении Sinatra. Объект session
позволяет хранить и извлекать данные, связанные с сеансом пользователя. В маршруте /login
идентификатор пользователя сохраняется в сеансе, а в маршруте /logout
данные сеанса очищаются.
Вот несколько дополнительных методов, которые можно использовать с сеансами в Sinatra:
session[key]
: извлекает значение, связанное с указанным ключом, из сеанса.session[key] = value
: сохраняет значение в сеансе, связанное с указанным ключом.session.delete(key)
: удаляет из сеанса значение, связанное с указанным ключом.session.clear
: удаляет все данные, хранящиеся в сеансе.