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


当前回答

Facebook增加了测试版本功能。

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

然后,将Website下的Site URL更改为“http://localhost”,按保存更改

这就是全部内容,但要小心:应用程序ID和应用程序秘密密钥对于应用程序及其测试版本是不同的!

其他回答

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

打开“/etc/hosts (unix)”或“c:\ windows \system32\drivers\etc\hosts”

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

127.0.0.1    local.foo.com

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

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

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

Facebook→设置→基本设置:在“App”中输入“localhost” 域”字段,然后点击“+添加平台”选择“网站”。 之后,在“站点Url”字段中写入您的本地主机Url(例如:http://localhost:1337/something)。

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

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

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

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