我想基本了解一下Activity Feed插件是如何工作的,所以我想我会在html页面上设置一个小例子,看它是什么样的。我正在使用创建的FBML方法控制。问题是Feed没有渲染。正如我所说,我只是想测试一下如何工作,所以我使用http://www.facebook.com作为域名。再次这很简单,但我没有看到控件渲染。这是我的代码内容:
<!DOCTYPE html>
<html>
<head>
<title>Facebook API Testing</title>
<meta http-equiv="Content-type" content="text/html;charset=UTF-8">
</head>
<body>
<div id="fb-root"></div>
<script>(function(d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s); js.id = id;
js.src = "//connect.facebook.net/en_US/all.js#xfbml=1&appId=myid";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>
<h1>Facebook API Testing</h1>
<div>
<fb:activity href="http://www.facebook.com" action="like" width="300" height="300" header="true" recommendations="true"></fb:activity>
</div>
</body>
</html>
我没有收到任何错误。我什么都没看到。当我检查页面时,我看到fb活动提要标记在那里:
<fb:activity href="http://www.facebook.com" action="like" width="300" height="300" header="true" recommendations="true"></fb:activity>
解决
好的,这已经解决了,如果您尝试从本地计算机上的独立html文件运行它,这显然不起作用。当我将上述内容上传到网络服务器并查看页面时,内容正在呈现。
答案 0 :(得分:1)
好的,这已经解决了,如果您尝试从本地计算机上的独立html文件运行它,这显然不起作用。当我将上述内容上传到网络服务器并查看页面时,内容正在呈现。
这是因为JS SDK的地址是//connect.facebook.net
- 允许浏览器选择是否使用HTTP或HTTPS自动请求脚本。当然,这只有在页面本身可以通过这两个协议中的任何一个访问时才有效 - 而不是通过file://访问它时。
您可以使用本地Web服务器来测试这样的事情 - 或者您可以自己将http:
放在脚本地址前面。