Facebook graph api Facebook是否支持哈希爆炸!Ajax可爬行URL?

Facebook graph api Facebook是否支持哈希爆炸!Ajax可爬行URL?,facebook-graph-api,hash,escaping,fragment,Facebook Graph Api,Hash,Escaping,Fragment,Facebook是否支持Google的ajax爬行规范?如果支持,您需要做什么来实现它 我正试图让Facebook的“喜欢”按钮与此处定义的AJAX可爬行URL一起工作:code.google.com/web/ajaxcrawling/docs/specification.html 我有这个网址,我可以直接去和它加载。请注意url中的“#!”: 当我“喜欢”这个页面时,它应该抓取这个“转义片段”url: 为什么它不抓取这个页面?Facebook linter没有正确抓取我的页面。如果你在这里

Facebook是否支持Google的ajax爬行规范?如果支持,您需要做什么来实现它

我正试图让Facebook的“喜欢”按钮与此处定义的AJAX可爬行URL一起工作:code.google.com/web/ajaxcrawling/docs/specification.html

我有这个网址,我可以直接去和它加载。请注意url中的“#!”:

当我“喜欢”这个页面时,它应该抓取这个“转义片段”url:

为什么它不抓取这个页面?Facebook linter没有正确抓取我的页面。如果你在这里使用Facebook linter工具:developers.Facebook.com/tools/debug


它无法正确抓取启用了AJAX且包含“#!”的URL。这是谷歌的规范。Facebook的lint crawler需要做的是将“#!”替换为“_逃脱的_碎片”。这对我来说也是一个大问题,但不幸的是,Facebook似乎不支持这种谷歌URL符号。Facebook的爬虫/解析器不会从散列爆炸(#!)转换为“转义”格式的URL

像你一样,我在Facebook的URL linter上测试了我的页面,它只在动态原始页面中拾取静态打开图标记,而不是我页面的服务器端变体中特定于页面的打开图标记。不幸的是,这意味着Facebook将我的Open Graph标记视为特定于站点的,而不是特定于页面的

具有讽刺意味的是,这似乎是不受支持的,因为Facebook使用这种方法本身就允许谷歌的爬虫抓取Facebook页面

一个可能对您有所帮助的解决方法是:

1) 在Facebook链接中使用您的页面版本 2) 添加一个自动重定向到您的_转义_片段u变体的正确版本

这意味着Facebook将选择正确的元标记,用户将单击链接并最终进入正确的页面。这种方法的缺点是,用户必须知道相当难看的“转义片段”URL。换句话说,可能只有你自己知道,除非你在你的页面上添加某种“生成可共享链接”按钮


Facebook增加对这一功能的支持肯定只是时间问题,因为单页散列式网站只会越来越流行。

需要更多信息。不知道他在问什么。对不起,把你弄糊涂了。我的问题非常具体,没有多少开发人员遇到过这个问题。如果你看看谷歌的规范(很长:()那么你可能会更好地理解我的问题。这个问题不应该被关闭;这是一个合法的问题。我知道这个问题已经关闭,但我也同意应该重新打开。如果他们不重新打开这个问题,Facebook确实支持谷歌的规范。请确保你在头脑中包括,我附加“/#!”在用户墙上,我可以看到链接呈现为转义片段…如果找到更好的解决方法,请更新