使用localhost时的Facebook app域名

时间:2012-11-14 10:08:09

标签: facebook

从这里的教程:
http://ankurm.com/blog/api/using-localhost-for-facebook-app-development/1091/

我尝试为我的Facebook应用设置本地开发区。但当我把“http://localhost:85/my_app/”作为我的域名时,Facebook说

  

应用域:“http://localhost:85/app-name/”不应包含协议信息。

当我把“localhost:85 / my_app /”作为我的域名时,我收到错误:

  

App Domains:localhost:85 / my_app /不是有效域。

16 个答案:

答案 0 :(得分:55)

协议似乎已经改变了。

这是我的解决方案(我在2015年4月3日测试过,效果很好):

设置 - > 基本标签

  1. 应用程序域: localhost
  2. 点击" +添加平台"并选择" 网站"
  3. 网站网址 http://localhost:<port>/&lt; port&gt; 是您的端口号)
  4. 保存更改

答案 1 :(得分:53)

我的解决方案:

  1. 将App Domains留空
  2. (产品)Facebook登录&gt;设置
  3. http://localhost:85/my_app/添加到Valid OAuth redirect URIs
  4. 保存更改

答案 2 :(得分:43)

  1. 将App Domains留空
  2. 使用Facebook登录进入网站
  3. 添加http://localhost:port_number/
  4. 保存更改,然后重试。 欲了解更多信息,请访问
  5. http://developers.facebook.com/docs/samples/canvas/ 快乐的编码: - )

答案 3 :(得分:29)

多年来这已经改变了一些,但我只是使用了一个我在localhost上运行的webapp。这就是我所做的:

  1. 转到https://developers.facebook.com/apps
  2. 选择您的应用。
  3. 选择设置&gt;从左侧导航栏开始。
  4. 单击页面底部的“添加平台”按钮。
  5. 点击网站
  6. 输入http://localhost:8080/作为网站网址。
  7. 点击刚刚输入的网站网址最右侧的快速入门按钮。
  8. 将打开一个新标签页。在该标签上,向下滚动到“告诉我们您的网站”部分,然后再次输入http://localhost:8080/作为网站网址。
  9. 单击“下一步”按钮。
  10. 再次尝试登录,这次工作正常。
  11. 祝你好运!

答案 4 :(得分:29)

2018工作解决方案

我花了很多时间来解决这个问题,所以我将分享我的解决方案。

我尝试了所有建议的答案,但没有任何对我有用,最后我要做的就是转到https://developers.facebook.com/apps/YOUR_APP_ID/fb-login/settings/,并在有效的OAuth重定向URI中添加完整的回调网址框。

在我的情况下,在rails上使用ruby,我的网址看起来像http://localhost:3000/user/auth/facebook/callback

在我添加之后,一切都开始了!希望这有助于其他人面对这个问题。

答案 5 :(得分:11)

这就是我过去常做的事情。

如果您使用的是Windows,则需要修改主机文件。主机文件位置为%SystemRoot%\System32\drivers\etc\

在主机文件中添加一个新行

127.0.0.1    localhost.YOUR-SITE-NAME.com

保存主机文件。

转到FB应用设置控制面板,并在应用领域字段中提供localhost.YOUR-SITE-NAME.com。保存更改。

现在从浏览器中加载localhost.YOUR-SITE-NAME.com等本地环境。

注意:使用您的域名更改您的网站名称。

答案 6 :(得分:5)

您可以将其留空或使用localhosthttp://localhost:85/my_app/是网址

答案 7 :(得分:5)

工作解决方案(2018年8月)

首先,在developers dashboard中选择您的应用。

然后确保您的应用程序位于development mode中,因为它允许HTTP上的localhost。为此,请点击应用页面右上方的切换按钮。

最后,请遵循以下注意事项,否则,如果填写不正确,可能会引起麻烦:

  • Settings > Basic > App Domains应该为空
  • Products > Facebook Login > Settings > Valid OAuth Redirect URIs应该为空

答案 8 :(得分:3)

当我在那个时候编写该教程时,在app域中允许使用端口。我实际上能够使用81端口(wamp服务器)运行应用程序。现在看来facebook不允许在url中使用端口。您可以在应用域中使用localhost

我会尽快更新信息。我想找出解决方案。

临时解决方案是使用localtunnel http://progrium.com/localtunnel/

答案 9 :(得分:2)

我对此进行了测试,并且对我有用[2020年2月]:

  1. 安装ngrok并获取您的https网址(例如:https://a3asdf23.ngrok.io
  2. 转到“应用程序域”下的“ FB应用程序仪表盘设置(基本)”->添加https://a3asdf23.ngrok.iohttps://ngrok.io
  3. 在同一页面上,一直向下滚动,添加平台(网站),将URL设置为https://a3asdf23.ngrok.io。尚未完成,请点击“向我们介绍您的网站”下的快速入门->,并输入相同的网址https://a3asdf23.ngrok.io
  4. 然后转到产品-> Facebook登录->设置->客户端OAuth设置->有效的OAuth重定向URI->添加以下https://a3asdf23.ngrok.iohttps://ngrok.iohttps://a3asdf23.ngrok.io/{your-redirect-uri}

然后您去。稍后谢谢我:)

答案 10 :(得分:1)

您必须创建一个隧道来共享您的localhost; Ngrok是最简单的方法。

答案 11 :(得分:1)

https://ngrok.com

浏览https://ngrok.com/链接下载ngrok并解压缩该文件。 打开cmd(搜索cmd) 转到提取ngrok的目录。 从命令行ex:c:/ngrok/ngrok.exe [port]或cd c:/ ngrok然后ngrok 80(ngrok [port])打开ngrok 你会得到

ngrok

Tunnel Status                 online
Version                       1.3/1.3
Forwarding                    http://3ahsdfhska.ngrok.com -> 127.0.0.1:80
Forwarding                    https://3ahsdfhska.ngrok.com -> 127.0.0.1:80
Web Interface                 http://127.0.0.1:4040
# Conn                        0
Avg Conn Time                 0.00ms

请勿忘记确保您的wamp服务器在同一端口上打开... (如何检查 - &gt; goto-&gt; wampicon-&gt; apache-&gt; httpd.conf搜索端口或80(默认)用于ngrok.exe 80)

  

http://3ahsdfhska.ngrok.com

将是用于在线访问本地主机的URL

答案 12 :(得分:0)

如果您收到协议错误,您不仅需要删除Http://而且如果网址末尾有任何反斜杠,您也必须删除它,否则它将无效。我这样做了,它完美无缺!呼啦!

答案 13 :(得分:0)

将另外一个解决方案投入到混合中:

我根据说明设置了我的网站,然后添加了第二个应用程序(Facebook Canvas)并将该URL设置为http://localhost:XXXXX。现在我可以在本地和生产中访问FB。

答案 14 :(得分:0)

我在本地开发并使用此网址:localhost/fb

然后我必须添加一个包含以下网址的网站:http://localhost

应用领域下,我添加了localhost

现在它有效。我唯一的问题是,您必须在所有脚本中使用此URL。 E.g。

$loginUrl = $helper->getLoginUrl('http://localhost/fb/login-callback.php', $permissions);

你不能在这里使用127.0.0.1 ......

答案 15 :(得分:0)

我尝试了这里提到的所有解决方案,但没有一个起作用。

解决我问题的方法是将“ OAuth重定向URI”从Firebase复制到Facebook应用“有效的OAuth重定向URI”

我将所有域都留空了