我在整合Facebook赞按钮方面遇到了问题。 我的网站受到cookie的限制(这意味着用户在进入实际网站之前必须通过年龄验证页面。)
我在页面标题中包含了所有必需的元标记,一切都很好!
我的问题如下:当我在其中一个页面上集成了like按钮并点击它时,Facebook没有拿起任何元标记 - 所以没有缩略图,没有描述,没有标题,只是实际的链接就是这样!
我在删除cookie限制后测试了Like按钮,它可以正常工作。
<script>
window.fbAsyncInit = function() {
FB.init({ appId: '158419700854111',
status: true,
cookie: true,
xfbml: true
});
};
(function() {
var e = document.createElement('script'); e.async = true;
e.src = document.location.protocol +
'//connect.facebook.net/en_US/all.js';
document.getElementById('fb-root').appendChild(e);
}());
</script>
我的网页上也有上述代码,因此启用了Cookie支持。
有没有人遇到同样的问题?什么是可能的解决方案?
答案 0 :(得分:1)
我把它整理出来了,
我不得不拿我的服务器登录并搜索Facebook爬虫(是的,有一个)。我已经将这个例外添加到了我的“年龄页面”中,一切都运行得很完美。同样的问题适用于Twitter:)
答案 1 :(得分:0)
如果请求来自facebook,我建议禁用cookie检查。怎么检测到这个?使用http://developers.facebook.com/tools/lint/
工具抓取您的测试页并捕获服务器端的传入请求。我确信facebook会以某种方式识别自己(也许有自己的用户代理)。