Wordpress 是否有可用的 Devise/Omniauth/Oauth2 界面?

Is there a working Devise/Omniauth/Oauth2 interface with Wordpress?

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

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

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

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

当我单击 "Sign in with Wordpress"(自动插入到我的 Devise 登录页面中)时,我只是得到一个 404,其中 "Not found. Authentication passthru," 是 [=11 的存根响应=] Devise 源代码中的方法。路线耙得很好,看起来像所有的例子。我已经重启服务器几十次了。

尽管多次尝试在 client_options 中设置 site:authorization_url:,但在我的设计配置和直接插件源中,我的应用程序从未重定向到我的 Wordpress 站点。我花了大约 10 个小时来解决这个问题,而且我不知道应该负责实际将我发送到站点进行身份验证。更复杂的是,在这种情况下,我能找到的几乎所有关于重定向的参考都是关于 回调 到我的 Rails 站点的,在身份验证完成后。我永远做不到那么远。

在 SO 和整个 Internet 上对这个问题有很多令人困惑的引用。有一些关于在我的 OmniauthCallbacksController 中制作 "real" passthruaction_missing 方法的讨论,但这似乎是过时的信息。有很多关于确保我已经在我的用户模型中定义了 omniauth_providers 的讨论,我已经尝试过使用和不使用它,但这在关于这个插件的任何文档中都没有。

我一直在尝试查看该插件的策略文件,它似乎与我一直在查看的用于 Facebook 的其他 Oauth2 插件、Google 或其他插件没有什么不同。似乎我需要设置一个非常简单的东西才能使这一切正常工作,但我找不到它,而且我 运行 不知道如何找到它。该插件最后一次更新大约是在 5 年前。现在还有人在 Devise、Omniauth 和 Wordpress 的现代版本中使用它吗?如果是这样,你能给我一些线索吗?

我终于开始跟踪 gem,并找到了失败的地方。当我搜索那些进一步的问题时,我终于弄清楚这个 gem 大约有 25 个分支,其中许多都解决了这个问题。我用了这个特别的:https://github.com/bkno/omniauth-wordpress-oauth2-plugin