我是Facebook开发的新手,想在我的网站上添加评论插件
我已经在Facebook上创建了一个应用程序,以备不时之需。但由于我尚未注册我的域名,因此我将App Domain
部分留空了
然后我复制了给我的代码:http://developers.facebook.com/docs/reference/plugins/comments/来测试插件。但是,当我在html文件中测试代码时,没有任何显示。
App Domain
部分吗?我可以使用example.com
网址测试插件吗? 更新: 基于Lix的回答,我编辑了我的hosts文件并添加了:
127.0.0.1 www.example.com
127.0.0.1 example.com
127.0.0.1 http://www.example.com
127.0.0.1 http://example.com
这是我的测试页面:
<html>
<head>
<title>My Web page</title>
</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";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>
<div class="fb-comments" data-href="http://example.com" data-num-posts="2" data-width="470"></div>
</html>
但仍然没有运气。
答案 0 :(得分:3)
据我所知,你做需要一个App来使用Comments插件(我相信的审核功能)。如果您查看评论框的code Facebook generates,您会看到它有一个应用ID:
<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=MY_APP_ID"; // <-- here
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>
要让您的应用在本地正常运行,您需要设置虚拟主机。我通常使用http://website1.dev
等名称设置它们。
部分正在将域添加到您的hosts
文件以解析为您的localhost(127.0.0.1)。
另一个部分是在您网站的本地Web服务器上创建虚拟主机。这样,您实际上是在http://example.com
而非localhost/example.com
的浏览器中访问本地网站。有很多关于如何设置Apache来做这篇文章的好文章,这里有两篇:
然后,确保您的Facebook应用管理员设置已正确设置为允许http://example.com
域。当您设置应用程序“网站”时,您必须指定“网站URL”。您还可以将新的本地域添加为应用程序“App Domain”。
上帝好运!
答案 1 :(得分:2)
您可以做的是编辑您的主机文件以包含您的“虚假”本地域并将该值放在那里。