如何测试Facebook本地连接

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

www.facebook.com/developers/编辑你的应用程序,并将“站点URL”设置为“http://localhost/myapppath”。

完成后,把它改回来。

去画布页面.. 在浏览器中查看。复制地址栏文本。 现在去你的facebook应用 进入编辑设置

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

在facebook整合,再次粘贴该地址在画布url

同样的代码,无论你需要画布url或重定向url..

希望能有所帮助。

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

当你发现的时候就很简单了。

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

如果你的域名是foo.com,那么添加这一行:

127.0.0.1    local.foo.com

当你在测试时,在浏览器中打开local.foo.com,它应该可以工作。

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

我建议在https://developers.facebook.com/apps上创建一个测试应用程序(仅适用于开发环境),并将:Website with Facebook Login属性设置为您的本地主机(港):设置 这个选项在不需要更改主机的情况下工作得很好 记住,一旦你上线,将appId更改回你的生产应用程序。

编辑 -在最新的fb版本中,你会在settings选项卡下找到它。 enter image description here

创建2个应用程序

/初始化/ 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

看来facebook又改变了应用开发页面,增加了一个叫做“服务器IP白名单”的功能。

  1. 进入你的应用程序,选择设置->高级选项卡
  2. 获取你的公共IP(谷歌会告诉你如果你谷歌“我的IP是什么”)
  3. 将您的公网IP添加到“服务器IP白名单”中,单击下方的“保存更改”

你不需要做任何困难的事情!

Facebook→设置→基本:
"App中写入“< >强localhost < / >强” Domains"字段然后点击“< >强+添加平台< / >强”选择“< >强网站< / >强”.

.

之后,在“< >强网站Url < / >强”字段中编写您的localhost url
(例如:: http://localhost:1337/something)。

这将允许你在本地测试你的facebook插件。

Facebook增加了测试版本功能。

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

Create Test App

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

enter image description here

这就是全部,但注意:App IDApp Secret键对于应用程序和它的测试版本是不同的!

最后测试201/06/07

只是一些注释,以补充@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。

  • 最后,不要忘记在请求中使用测试应用程序的client-id (aka app-id)和app-secret,这与父应用程序不同