У меня есть API-приложение rails-grape, которое было аутентифицировано с помощью devise. Теперь я пытаюсь реализовать тайм-аут автоматического сеанса с помощью apis. Для этого я реализовал гем devise_auth_token.
Мой devise_auth_token.rb
DeviseTokenAuth.setup do |config|
config.change_headers_on_each_request = false
config.token_lifespan = 60.seconds
config.batch_request_buffer_throttle = 30.seconds
end
Я запустил команду установки, как это было упомянуто в документах.
rails g devise_token_auth:install User auth
Я обновил свой файл миграции, например:
class DeviseTokenAuthCreateUsers < ActiveRecord::Migration[5.2]
def change
## Required
add_column :users, :provider, :string, null: false, default: "email"
add_column :users, :uid, :string, null: false, default: ""
## Tokens
add_column :users, :tokens, :json
add_index :users, [:uid, :provider], unique: true
end
end
Мои маршруты.рб
devise_for :users, ActiveAdmin::Devise.config
# token auth routes available at /api/v1/auth
namespace :api do
scope :v1 do
mount_devise_token_auth_for 'User', at: 'auth'
end
end
Как видите, я сохранил значение token_lifespan равным 60 секундам. но даже после того, как я неактивен почти 5 минут, срок действия моего сеанса не истекает. Мне нужна помощь, чтобы понять, что я здесь упускаю/делаю неправильно. Любая помощь будет высоко оценена.
Заранее спасибо.