gpt4 book ai didi

ruby-on-rails - Devise gem 中的 'skip session storage' 是什么意思?

转载 作者:行者123 更新时间:2023-12-04 08:35:15 25 4
gpt4 key购买 nike

我正在阅读 Devise gem 的初始化文件 (config/initializers/deviser.rb) 并且很难理解这部分。

# By default Devise will store the user in session. You can skip storage for
# :http_auth and :token_auth by adding those symbols to the array below.
# Notice that if you are skipping storage for all authentication paths, you
# may want to disable generating routes to Devise's sessions controller by
# passing :skip => :sessions to `devise_for` in your config/routes.rb

config.skip_session_storage = [:http_auth]

我正在查看的原因是因为我正在尝试使用基于 api 的 token 身份验证,在这种情况下,我需要将该配置行更改为:
config.skip_session_storage = [:http_auth, :token_auth]

谁能解释一下评论的意思?

最佳答案

很简单,它告诉 Devise 不要在 session 中存储用户。这是它的另一种解释:

skip_session_storage+:默认情况下,Devise 会将用户存储在 session 中。您可以通过将值附加到数组来跳过 http 和 token 身份验证的存储::skip_session_storage => [:token_auth] 或 :skip_session_storage => [:http_auth, :token_auth],默认设置为 skip_session_storage => [:http_auth]。

Devise::Models::Authenticatable

出于您的意图和目的,我将使用 Warden/Devise 禁用 session 缓存;我相信它会干扰某些 API(尽管不要相信我的话)。希望有帮助。

关于ruby-on-rails - Devise gem 中的 'skip session storage' 是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21298727/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com