OmniAuth Facebook身份验证路由的Restful身份验证

时间:2012-01-06 21:14:07

标签: facebook authentication rest omniauth routes

我安装了omniauth用于facebook身份验证。一切正常但路由。 访问后

  • 本地主机/ AUTH /实

我被发送到

  • 本地主机/ AUTH /实/回调?代码= AQC3aoZVieeY3WSkYbj4VYoBlpMvE8vAsHkXIhP1o_QCIz2olj7vzwHy1cGKshtRdx_hw6fb8Ru6ErZAYPlIUMuW635bJD2_6pQGe659jTGpZx6h6kBZgumj4o4rJyoDwq032liV6jwP8FFTQDEqoXXkL-ArIpulqpFFUdbssvT8_tNtiAQGxdrylRNdj8hYnHA

这不会路由到控制器来创建任何内容。仅

  • 本地主机/ AUTH /实/回调?代码= AQC3aoZ

将发送给我创建并检查凭据是否无效。

我正在使用

match '/auth/facebook/callback' => 'auths#create' 

我不确定出了什么问题以及为什么一个人工作而另一个没有。

1 个答案:

答案 0 :(得分:1)

我在设置这个问题时遇到了很多问题。事实证明,即使你正在点击“localhost”,OmniAuth也会为facebook提供其他东西的返回URL - 127.0.0.1。所以你真正需要的是:

App Domain:localhost(因为这不能是IP地址)

网站网址:http://127.0.0.1:3000(因为这是OmniAuth传递的IP地址)

...但Facebook抱怨这些需要匹配,这将使您无法进行本地测试。解决方法是单独保留上述设置并转到“移动Web”部分,并将“移动Web URL”填入http://localhost:3000。这将允许您通过FB的验证并使用上述设置。