如何在已经在线的Facebook网站上继续开发本地?

时间:2011-02-22 11:36:51

标签: facebook local

我有一个网站,专门使用Facebook身份验证作为其会员系统。在Facebook应用设置中,回调网址设置为网站的域名。

我想继续开发本地网站,同时保持网站的正常运行。但是,由于回调网址是网站的实时域名而不是本地主机地址,因此Facebook身份验证部分失败。

是否可以同时使用localhost和域回调网址?如果没有,那么继续本地开发已经存在的网站的标准做法是什么?

3 个答案:

答案 0 :(得分:2)

假设您使用ASP。但是适用于任何语言。

您可以使用http://localhost作为域名在facebook中创建另一个应用程序。将appid和secret分别存储在web.config文件中。

然后在主页的代码后面,检查Request.ServerVariables(“HTTP_HOST”),如果是localhost,请使用web.config文件中的相应设置。

If Request.ServerVariables("HTTP_HOST").StartsWith("localhost") Then
    FBAppID = System.Configuration.ConfigurationManager.AppSettings.Item("FBAppIDLocal")
Else
    FBAppID = System.Configuration.ConfigurationManager.AppSettings.Item("FBAppID")
End If

答案 1 :(得分:0)

您可以在请求访问令牌时指定回调网址:

https://www.facebook.com/dialog/oauth?
 client_id=YOUR_APP_ID&redirect_uri=YOUR_URL

这应该覆盖其他回调路径。 请参阅here

答案 2 :(得分:0)

你可以创建一个新的应用程序(复制代码),就像一个新的分支,并在本地开发它,当它完成后,然后将其上传到在线版本(如合并)。

在当地发展:

  

Facebook - >设置 - >基本,在“App中编写”localhost“   域“字段,然后单击”+添加平台“选择”网站“

     

然后在“网站网址”字段中编写您的本地网址(例如:   http://localhost:1337/something)。