据我所知,在Facebook分享对话框上指定标题/图像的唯一方法是添加元标记。
添加不同的参数以共享链接URL不再起作用,例如,这样的事情将不起作用:https://www.facebook.com/sharer/sharer.php?u=${pageUrl}&i=${pageImg}
。
因此,基本上,唯一的方法是在页面加载时为爬虫提供以下元标记。
<meta property="og:url" content="https:/aurl.com" />
<meta property="og:type" content="website" />
<meta property="og:title" content="atitle" />
<meta property="og:image" content="https:/aurl.com/img"/>
由于我在加载时无法获得正确的值,因此我不得不尝试几种不同的建议。没有一个真正可行的,除了以下不完美的:
我创建了一个包含某些参数的页面,并使用上述meta标签和一个空的正文为新页面提供服务。大多数情况下都可以。
但是有一个问题:
设置标签property="og:url"
时。 Facebook尝试抓取该URL并获得错误的标题/图像,然后单击该帖子将您带到正确的页面。
未设置标签property="og:url"
时。 Facebook用空的正文爬到正确的页面,图像/标题正确。但是,单击该帖子会将您带到身体空白的错误页面。
为解决此问题,我添加了一个小的JS重定向,但这只是一种解决方法。
我的问题是:有解决方案或更好的方法吗?