我正在尝试编写一些 javascript 函数来与 Facebook 流集成。然而,它们似乎只有在您直接在实时服务器上开发它们时才能工作,以便 Facebook 可以访问他们要求我放置在 www.mydomain.com/xd_receiver 的 xd_receiver.htm
文件.htm
。然而,你们可能都同意不在实时服务器上开发是非常重要的。
这是我到目前为止尝试过的:
- 将
xd_receiver.htm
放在实时服务器上并在我的开发服务器上运行我的脚本,希望 API key 会告诉 Facebook 服务器寻找 xd_receiver.htm
我的实时服务器...不走运
- 通过 Facebook 注册两个 API key :一个指向 127.0.0.1 的开发 key 和一个指向我的实时网站的实时 key 。这里的理论是,如果只在本地需要
xd_receiver.htm
,那么它会通过 127.0.0.1 找到它...运气不好
有没有人想出办法做到这一点?他们不能指望我们在没有开发沙箱的情况下纯粹地开发我们的 Facebook 应用程序。
关于它的值(value)的一些背景信息:Using ASP.NET with VB but hopeing to use purely Javascript.
绝对可以使用本地的 xd_receiver.htm 文件。我的职业是 Facebook 应用程序开发人员,我已经设置了数十个应用程序。
您最接近上述第 2 项的正确答案。方法是创建两个版本的应用程序。如果我正在制作“MyApp”,我可能有两个 Canvas 页面 url“myapp”和“myapp-dev”,以及相应的 Canvas 回调 URL“www.myapp.com”和“192.168.1.1”。每个都是一个单独的 Facebook 应用程序,具有自己的 API key 等。
apps.facebook.com/myapp 会转到我的实时服务器,而 apps.facebook.com/myapp-dev 会转到我的本地开发机器。当然,您必须确保 Facebook 可以访问您的开发机器。
但是,从那里开始一切应该都可以正常工作。您甚至不需要不同版本的 xd_receiver.htm 文件,因为每个应用程序的文件内容始终相同。只要您的 FB.XdComm.Server.init("/xd_receiver.htm");
行指向正确的文件,它就应该可以工作。
我在配置文件中管理 API key 和路径等,每个应用程序都有一个配置文件,无论是开发应用程序还是生产应用程序。这使得在应用程序页面上输出正确的键和路径变得容易。
您可以将您的开发应用程序保持在沙盒模式,并在您的本地机器上完成所有工作。