我正在尝试使用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_options
或passthru
方法,但这似乎已经过时了。有关确保我在用户模型中定义action_missing
的讨论很多,无论有没有,我都尝试过,但这在有关此插件的任何文档中都没有。
我一直在尝试查看该插件的策略文件,似乎与我一直在审查的Facebook,Google或其他任何Oauth2插件没有什么不同。为了使这一切都能正常进行,似乎需要设置一个非常简单的东西,但是我找不到它,并且我已经没有足够的想法来进行追踪了。该插件的最新更新时间约为5年。有人还会在Devise,Omniauth和Wordpress的现代版本中使用它吗?如果是这样,您能给我个提示使其工作吗?
答案 0 :(得分:0)
我终于开始跟踪宝石,并找到失败的地方。当我搜索这些进一步的问题时,我最终发现该宝石大约有25个分叉,其中许多都解决了该问题。我使用了特定的一个:https://github.com/bkno/omniauth-wordpress-oauth2-plugin