来自Facebook Developers Javascript SDK Documentation 的“channelUrl必须是与页面匹配的完全限定URL 你加入了SDK。“
好的,所以我添加了我的代码,如下所示:
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的页面(除非这与安全性有关)。
答案 0 :(得分:2)
所有文档都指的是它在根本上,所以我认为它在那里很好。如果one of the three issues失败,您将知道它是否不起作用。
唯一的要求是域(不是完整的URL)和协议必须匹配。