gpt4 book ai didi

ruby-on-rails - Rails 和 Omniauth - 我应该从身份验证散列中保存多少数据?

转载 作者:行者123 更新时间:2023-12-04 05:58:22 25 4
gpt4 key购买 nike

我目前正在使用 rails 和 omniauth gem 将我的应用程序与 facebook、twitter 和 linkedin 集成。当我处理 omniauth 回调时,我只是从身份验证哈希中保存 uid 和提供者。大多数在线教程也只保存这些字段,但您以后如何从 facebook/twitter/linkedin 访问用户详细信息?除 uid/provider 之外,还应保存身份验证哈希中的哪些其他字段?

我读过的一些指南:

Github omniauth with devise

Railscast omniauth and devise

最佳答案

在创建全功能 OmniauthCallbacksController 之前,在 Railscast 中有一个示例,其中行:

raise request.env["omniauth.auth"].to_yaml

在屏幕上输出请求。如您所见,在这个散列 omniauth.auth 中,有很多关于已验证用户的有用信息。每次验证成功时都会收到它。在这种情况下,除了 uidprovider 之外,不需要在数据库中存储任何其他内容。

散列的条目可以像这样访问:

(request.env["omniauth.auth"]).info.nickname

(request.env["omniauth.auth"]).uid

您看到了逻辑:yaml 输出的每个部分(比如“信息”)都包含特定的属性。

关于ruby-on-rails - Rails 和 Omniauth - 我应该从身份验证散列中保存多少数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14077494/

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