如何在本地测试Facebook Connect

时间:2010-03-17 03:26:44

标签: facebook

我使用ASP .NET和Facebook Connect API。但当我运行应用程序并按下连接按钮时,它返回到网站而不是测试本地服务器(http://localhost:xxxx/test.aspx) 那么我如何在本地测试Facebook(即如何更改回调网址)?

11 个答案:

答案 0 :(得分:231)

当你发现它时,这很简单。

打开/etc/hosts(unix)或C:\WINDOWS\system32\drivers\etc\hosts

如果您的域名是foo.com,请添加以下行:

127.0.0.1    local.foo.com

进行测试时,请在浏览器中打开local.foo.com,它应该可以正常运行。

答案 1 :(得分:102)

www.facebook.com/developers/修改您的应用,并将“网站网址”设置为“http:// localhost / myapppath”。

完成后 - 将其更改回来。

答案 2 :(得分:76)

我建议在https://developers.facebook.com/apps上创建一个测试应用(仅适用于开发环境),并将:Website with Facebook Login属性设置为 localhost:[port] 设置。
此选项可以正常工作,无需更改主机 上线后,请记得将 appId 更改回生产应用。

修改 - 在最新的fb版本中,您可以在settings标签下找到它。 enter image description here

答案 3 :(得分:70)

Facebook已添加测试版功能。

首先,添加应用程序的测试版本:创建测试应用程序

Create Test App

然后,将网站网址更改为网站下的“http://localhost”,然后按保存更改

enter image description here

这就是全部,但要小心: App ID App Secret 键对于应用程序及其测试版本是不同的!

答案 4 :(得分:38)

你不必做任何困难!

  

Facebook→设置→基本:在" 应用中写" localhost "   域" 字段然后点击" +添加平台" 选择" 网站"

     

之后,在" 网站网址" 字段中编写您的localhost网址
(例如:http://localhost:1337/something)。

这将允许您在本地测试您的Facebook插件。

答案 5 :(得分:5)

Facebook似乎随机禁用了将localhost设置为facebook应用程序域的功能。我发现最简单的方法是将我的localhost隧道传送到网上。这可以使用http://progrium.com/localtunnel/或自定义网址免费完成(因为您不必每次都在Facebook更改网址)https://showoff.io

答案 6 :(得分:3)

我无法使用其他解决方案......对我有用的是安装LocalTunnel.net(https://github.com/danielrmz/localtunnel-net-client),然后在Facebook上使用生成的URL。

答案 7 :(得分:1)

转到画布页面.. 在浏览器中查看它..复制地址栏文本。 现在去你的Facebook应用程序 转到编辑设置

在网站上,在网站网址中粘贴该地址

在facebook集成中,再次在canvas url中粘贴该地址

以及相同的代码,只要您需要使用canvas url或redirect url ..

希望它会有所帮助..

答案 8 :(得分:1)

看起来FB刚刚再次更改了app dev页面并添加了一个名为“Server IP Whitelist”的功能。

  1. 转到您的应用并选择设置 - >高级选项卡
  2. 获取您的公共IP(谷歌将告诉您,如果你谷歌“什么是我的知识产权”)
  3. 将您的公共IP添加到服务器IP白名单,然后单击底部的保存更改

答案 9 :(得分:0)

上次测试时间为 2021/06/07

用我的成功经验补充the excellent answer of @Erdal_G的几点说明:

  • 显然,即使在本地环境中也需要 HTTPS(我使用了库 https-localhost)。

  • [我不知道这是不是必须的] 从主应用程序 (https://developers.facebook.com/docs/development/build-and-test/test-apps/) 创建一个测试应用程序

  • 将重定向 OAuth URI 设置为 https://localhost:<MY_PORT>/auth/ 并相应地更新 .../instagram-basic-display/basic-display/ 设置中的所有其他 URI。

  • 最后,不要忘记在请求中使用测试应用的客户端 ID(又名 app-id)和 app-secret,它们与父应用不同

答案 10 :(得分:-6)

创建2个应用

/initializers/env_variables.rb

if Rails.env == 'development'
    ENV['FB_APP_ID'] = "HERE"
    ENV["FB_SECRET"] = "HERE"
else
    ENV['FB_APP_ID'] = "HERE"
    ENV["FB_SECRET"] = "HERE"
end