Facebook Javascript SDK的异步加载? channel.php的位置?

时间:2012-04-10 16:25:31

标签: facebook facebook-javascript-sdk xfbml

  

“channelUrl必须是与页面匹配的完全限定URL   你加入了SDK。“

来自Facebook Developers Javascript SDK Documentation

好的,所以我添加了我的代码,如下所示:

   window.fbAsyncInit = function() {
       FB.init({
          appId: '*****', 
          channelUrl: '//www.somehost.com/channel.php', // Channel File
          status: true, 
          cookie: true, 
          xfbml: true 
       });

       // Additional Init code here.
   };

将加载FB JS SDK的站点部分不在索引页面或我的频道文件所在站点的根目录中。

我应该在//www.somehost.com/channel.php中拥有我的频道文件吗?

或者我应该在//www.somehost.com/directory/folder/中的其他地方使用它,其中要加载SDK的页面将在哪里?

对我来说这听起来像是后者,但我不完全确定,因为我见过的大多数例子都把它放在根目录中。

将频道文件放在根目录中是否适用于所有子目录以及将在域中加载SDK的页面?

对我来说,为每个子目录添加一个通道文件似乎有点多余,该子目录中有一个将访问sdk的页面(除非这与安全性有关)。

1 个答案:

答案 0 :(得分:2)

所有文档都指的是它在根本上,所以我认为它在那里很好。如果one of the three issues失败,您将知道它是否不起作用。

唯一的要求是域(不是完整的URL)和协议必须匹配。