首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >最新的omniauth-facebook gem破解设计

最新的omniauth-facebook gem破解设计
EN

Stack Overflow用户
提问于 2021-01-13 21:24:59
回答 5查看 6.4K关注 0票数 11

ruby '2.6.3‘gem '>=’,'rails',‘rails 6.0.2',’rails 6.0.2.1‘

我使用的是最新的omniauth-facebook和一起设计的Gemfile: gem ' devise‘gem 'omniauth-facebook’

启动服务器时出现此错误:

/versions/2.6.3/lib/ruby/gems/2.6.0/gems/devise-4.7.3/lib/devise/omniauth.rb:12:in `':您正在使用旧的OmniAuth版本,请确保已安装1.0.0.pr2或更高版本。(RuntimeError)

问题是,如果我尝试使用旧的omniauth-facebook版本,服务器可以工作,但Facebook身份验证停止正常工作(例如,失败包括电子邮件,尽管

作用域:'email',info_fields:'email,name‘

在devise.rb中。)

我尝试过很多不同版本的omniauth-facebook和devise。要么是Facebook身份验证停止正常工作,要么是服务器出现故障(见上)。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2021-01-15 15:32:43

使用

代码语言:javascript
复制
gem 'devise', github: 'heartcombo/devise', branch: 'ca-omniauth-2'

在Gemfile中可以解决这个问题,等待合并。

根据下面的卡洛斯答案更新了我的答案,当我使用ref发布这篇文章时,我很着急。

谢谢你,卡洛斯维护设计。

票数 19
EN

Stack Overflow用户

发布于 2021-01-21 01:15:51

我是卡洛斯,设计维护者。请留意上面链接的拉取请求,我只是shared how you can test it in your app there

我建议使用分支引用,而不是直接使用git引用:

代码语言:javascript
复制
gem 'devise', github: 'heartcombo/devise', branch: 'ca-omniauth-2'

这样,您就可以运行bundle update devise omniauth了,它有望为您提供OmniAuth 2和这个Devise分支。这应该允许应用程序启动。

最后,如果您已经复制了应用程序上的Devise共享链接,或者如果您有自己的链接来启动OmniAuth身份验证流程,则需要确保将它们更改为使用表单。(例如,您可以使用带有method: :post选项的link_to,或者使用button_to (如果适用于您的应用程序)。)请注意,由于read more的安全问题,这是对OmniAuth工作方式的要求更改。

如果你遇到任何问题,请在GitHub中回复,我们将尽快解决这些问题,这样我们就可以发布一个完全支持OmniAuth 2的新的Devise版本。谢谢。

票数 11
EN

Stack Overflow用户

发布于 2021-05-01 06:57:10

Devise 4.8.0 (昨天发布)解决了这个问题。

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65702896

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档