ruby-on-rails - 如何在 Rails + Devise + Oauth 中使用“以 {name} 身份继续”Facebook 按钮?
问题描述
我已经使用 Devise 和 Omniauth成功地将使用 Facebook 登录功能添加到了我的 Rails 5 应用程序中。
而不是我的静态按钮,我想实现 Facebook 的嵌入 "Continue as {name}" login button。在他们的文档中,他们将生成以下代码供您实现:
<div class="fb-login-button" data-size="large" data-button-type="continue_with" data-auto-logout-link="false" data-use-continue-as="true"></div>
像这样执行它显然是行不通的。我真的很希望能够以一种我可以指定它指向我的user_facebook_omniauth_authorize_path
. 我怎么做?
我已经在网站上实现了 Facebook SDK。
先感谢您。非常感谢您的帮助!:-)
解决方案
Omniauth 使用服务器端登录流程,而此按钮是客户端登录流程的一部分。
只有通过嵌入客户端,它才能首先确定是否有登录的 Facebook 用户 - 在服务器端,该信息不可用。
服务器端和客户端的身份验证流程有很大的不同,所以我怀疑你是否能够实现这一点,而无需重写几乎完全处理登录的方式。
推荐阅读
- javascript - 由 TouchableWithoutFeedback 包裹后,FlatList 滚动不起作用
- react-bootstrap - 为什么引导很重要,有哪些好处?
- google-sheets - 如何在 Google 表格中突出显示行和列的交叉点?
- javascript - ajax data.success 代码块不能被执行(变量值)
- oop - Julia - 检查对象是否具有属性
- javascript - 如何覆盖/创建猫鼬模型函数?
- c - ODBC #define "ODBCVER" 标准的版本信息吗?
- python-3.x - 从boto3获取对象列表时如何排除文件名或文件类型列表?
- bash - envsubst 在 bash for 循环中没有按预期工作
- python - 如何使用前导空格将txt文件转换为json?