1

我正在为手机制作一个应用程序,我需要使用 Twitter 和 Facebook 身份验证。

我正在开发的 PC 和手机(Samsung Galaxy S2)连接到一个路由器。

我的电脑 IP 是 10.4.1.6。对于 Twitter 身份验证,我只需输入 callback_url"http://10.4.1.6:3000"并且一切正常,但对于 Facebook 身份验证,我得到:

"Invalid redirect_uri: Given URL is not allowed by the Application configuration."

我想如果我无法输入路由器的 IP,那么我可以在手机和 PC 上编辑主机文件以指向我的 Rails 服务器,但仍然没有运气。

当我尝试输入"http://rails_dev_work_pc.com:3000"时,Facebook 告诉我 URL 无效。我该如何解决这个错误?

编辑:
我试图输入这个:

但是我在手机和电脑上遇到了同样的错误。

还:

在 PC 上工作正常,但在我的手机上出现无效 URL 错误。

我没主意了。。

4

1 回答 1

0

我正在使用这个设置:

在 hosts 文件中,路由localhostlocalhost.com(或任何您喜欢的)。现在您应该可以使用以下 facebook 应用程序配置:

App Domain(s): localhost.com
Website for facebook login: http://localhost.com:3000/
Canvas-URL (optional): http://localhost.com:3000/<yourfacebookendpoint>

请让我知道这是否也适合您。此外,我发现拥有 2 个 facebook 应用程序非常有帮助 - 一个用于生产(指向您的生产应用程序 URL),一个仅用于测试(指向您在 HOSTS 文件中配置的 URL)。这样,您可以在不中断生产应用程序的情况下进行测试。

编辑

这是@ExEdzy 作为对此答案的编辑发布的最终解决方案:

我刚刚将主机文件中的“localhost localhost.com”更改为“ip localhost.com”

在我的手机中,ip 是我电脑的 ip(10.4.1.6)。在我的电脑主机文件中,IP 是“127.0.0.1”

在 facebook 中: - App Domains: => "http://localhost.com:3000" - Site URL: => "http://localhost.com:3000/auth/facebook/callback" 就像一个魅力。

于 2012-07-11T07:15:10.637 回答