有与Wordpress合作的Devise / Omniauth / Oauth2接口吗?

时间:2019-03-11 02:05:59

标签: ruby-on-rails wordpress oauth-2.0 devise omniauth

我正在尝试使用Wordpress通过以下Omniauth插件对我的Rails应用程序用户进行身份验证:

https://github.com/jwickard/omniauth-wordpress-oauth2-plugin

我已严格按照说明进行操作,并重复了他的示例,但这是行不通的。这真的很令人惊讶,因为它没有那么多。但是,我在这里发现了几个这样的线程,它们讨论了我遇到的相同问题:

Devise, OmniAuth & Facebook: "Not found. Authentication passthru."

当我单击“使用Wordpress登录”(它会自动插入到我的Devise登录页面中)时,我得到的只是一个404,带有“未找到。身份验证通过”,这是对{ Devise源代码中的{1}}方法。路线很好,看起来像所有示例。我已经重启服务器数十次了。

尽管在我的设备配置和插件源中都尝试了在passthru中设置site:authorization_url:的尝试,但我的应用程序从未重定向到我的Wordpress网站。我花了大约10个小时来解决这个问题,但我不知道实际将我发送到站点进行身份验证应该由谁负责。进一步弄清楚这一点是,在身份验证完成后,在这种情况下,我几乎可以找到的所有重定向参考都是关于回调到我的Rails站点的信息。我永远也走不过去。

在SO和整个Internet上都有很多关于此问题的令人困惑的参考。有人谈论在我的OmniauthCallbacksController中制作一个“真实的” client_optionspassthru方法,但这似乎已经过时了。有关确保我在用户模型中定义action_missing的讨论很多,无论有没有,我都尝试过,但这在有关此插件的任何文档中都没有。

我一直在尝试查看该插件的策略文件,似乎与我一直在审查的Facebook,Google或其他任何Oauth2插件没有什么不同。为了使这一切都能正常进行,似乎需要设置一个非常简单的东西,但是我找不到它,并且我已经没有足够的想法来进行追踪了。该插件的最新更新时间约为5年。有人还会在Devise,Omniauth和Wordpress的现代版本中使用它吗?如果是这样,您能给我个提示使其工作吗?

1 个答案:

答案 0 :(得分:0)

我终于开始跟踪宝石,并找到失败的地方。当我搜索这些进一步的问题时,我最终发现该宝石大约有25个分叉,其中许多都解决了该问题。我使用了特定的一个:https://github.com/bkno/omniauth-wordpress-oauth2-plugin