我正在尝试编写一些javascript函数来与Facebook流集成.但是,如果您直接在实时服务器上开发它们,它们似乎只能工作,以便Facebook可以访问xd_receiver.htm
它们要求我放置的文件www.mydomain.com/xd_receiver.htm
.但是,你们都可能同意不在现场服务器上进行开发非常重要.
这是我到目前为止所尝试的:
放置xd_receiver.htm
在实时服务器上并在我的开发服务器上运行我的脚本,希望API Key能告诉Facebook服务器xd_receiver.htm
在我的实时服务器上寻找...没有运气
使用Facebook注册两个API密钥:指向127.0.0.1的开发密钥和指向我的实时网站的实时密钥.这里的理论是,如果xd_receiver.htm
仅在本地需要,那么它将通过127.0.0.1找到它......没有运气
有没有人想出办法做到这一点?他们不能指望我们在没有开发沙箱的情况下完全开发我们的Facebook应用程序.
它的一些背景信息:使用ASP.NET和VB,但希望使用纯粹的Javascript.
绝对可以使用本地xd_receiver.htm文件.我是一个Facebook应用程序开发商,我有几十个设置.
你最接近上面#2的正确答案.这样做的方法是创建两个版本的应用程序.如果我正在制作"MyApp",我可能会有两个"myapp"和"myapp-dev"的Canvas Page网址,以及"www.myapp.com"和"192.168.1.1"的相应Canvas回调网址.每个都是一个单独的Facebook应用程序,具有自己的API密钥等.
apps.facebook.com/myapp将转到我的实时服务器,apps.facebook.com/myapp-dev将转到我的本地开发机器.你必须确保Facebook可以到达你的开发机器.
但是,事情应该在那里工作得很好.您甚至不需要不同版本的xd_receiver.htm文件,因为每个应用程序的文件内容始终相同.只要你的FB.XdComm.Server.init("/xd_receiver.htm");
行指向正确的文件,它应该工作.
我在配置文件中管理API密钥和路径等,每个应用程序都有一个配置文件,无论是dev还是生产应用程序.这样可以轻松地在应用页面上输出正确的密钥和路径.
您可以将开发应用程序保持在沙箱模式,并在本地计算机上完成所有工作.