Facebook “脸谱网”;例如;缺少请求参数

Facebook “脸谱网”;例如;缺少请求参数,facebook,facebook-like,Facebook,Facebook Like,我们有一个类似的按钮。我们使用如下内容填充数据href: 当facebook为“og”元标记中定义的标题和图像刮取我们的页面时,它会忽略数据href中的原始请求参数。这意味着我们不能根据引用成员自定义标题和图像,但这正是我们需要做的 我们尝试了数据href和og:url字段的各种值组合,但都没有成功。有人有什么想法吗 在头标签中: <meta content="This title should be based on the referring member" property="og:

我们有一个类似的按钮。我们使用如下内容填充数据href:

当facebook为“og”元标记中定义的标题和图像刮取我们的页面时,它会忽略数据href中的原始请求参数。这意味着我们不能根据引用成员自定义标题和图像,但这正是我们需要做的

我们尝试了数据href和og:url字段的各种值组合,但都没有成功。有人有什么想法吗

在头标签中:

<meta content="This title should be based on the referring member" property="og:title"></meta>
<meta content="Content would go here" property="og:description"></meta>
<meta content="http://foo.com/stuff/1" property="og:url"></meta>
<meta content="http://foo.com/images/hello.png" property="og:image"></meta>
<meta content="Foolandia" property="og:site_name"></meta>

然后是我们喜欢的按钮标签:

<fb:like data-action="like" data-href="http://foo.com/stuff/1" data-ref="member1" data-send="false" data-show-faces="false" />

您确定您的url返回到Facebook爬虫程序的
og:url
标记的值与
数据href
中的值相同吗?如果facebook在抓取的页面上找到规范的meta标记或og:url标记,它将丢弃元数据,并从规范的url检索元数据


您可以使用

测试facebook对URL的检测结果,因此,经过几次排列和组合后,我们可以这样解决这个问题:

我们将成员id添加到数据href(http://foo.com/stuff/1?tracking=member1)并从我们的元标记中删除了og:url。Facebook现在用url来抓取我们的页面:我们可以根据推荐会员定制Facebook上显示的标题和图片


谢谢你的帮助

事实上,我们确信它不是相同的值。请求参数本质上是成员id。当FB刮取时,它不是引用成员。我们想让FB在请求参数中使用data href url,因为当我们构建该url时,我们知道该成员是谁。当FB在一个单独的请求上回来抓取时,我们已经丢失了那个信息。我们认为省略og:url可能会导致FB依赖于data href,但它仍然将规范url理解为foo.com/stuff/1。我们如何强迫FB考虑数据HREF是规范的?你不,一条内容上的<代码> OG:URL标签就是那个页面的规范元数据应该生存的地方——爬行器去那里代替-你可以重定向其他浏览器而不是在那些页面上的土地,但是爬虫需要得到一致的元数据。