Jim*_*yen 11 hash escaping fragment facebook-graph-api
Facebook是否支持Google的ajax抓取规范,如果是这样,您需要做些什么来实现它?
我正在尝试使用Facebook"赞"按钮来处理此处定义的AJAX可抓取网址:code.google.com/web/ajaxcrawling/docs/specification.html
我有这个网址,我可以直接去,它加载.注意"#!" 在网址中:
当我"喜欢"这个页面时,它应该抓取这个"转义的片段"网址:
为什么不抓这个页面?Facebook linter没有正确抓取我的页面.如果在这里使用Facebook linter工具:developers.facebook.com/tools/debug
它不会使用"#!"正确抓取启用AJAX的URL 在里面.这是Google的规范.Facebook的lint爬虫需要做的是替换"#!" 使用"_escaped_fragment_".我的AJAX启用链接似乎没有这样做.
小智 7
这对我来说也是一个大问题,但遗憾的是Facebook似乎不支持这种Google URL表示法.Facebook的抓取工具/解析器不会从哈希爆炸(#!)转换为_escaped_fragment_格式的网址.
像我一样,我在Facebook的URL linter上测试了我的页面,它只在动态原始页面中选择静态Open Graph标签,而不是页面的_escaped_fragment_服务器端变体中的页面特定的Open Graph标签.不幸的是,这意味着Facebook将我的Open Graph标签视为特定于站点,而不是特定于页面.
具有讽刺意味的是,这似乎不受支持,因为Facebook使用这种方法本身允许Google的抓取工具获取Facebook页面.
一个可能对您有所帮助的潜在解决方法是:
1)在Facebook链接中使用您的_escaped_fragment_页面版本2)将_escaped_fragment_变体的自动重定向添加到正确的版本.
这应该意味着Facebook将选择正确的元标记,用户将点击该链接并最终到达正确的页面.这种方法的缺点是用户必须知道相当丑陋的_escaped_fragment_ URL.换句话说,除非您向页面添加某种"生成可共享链接"按钮,否则可能只有您知道它.
Facebook增加对此的支持肯定只是一个时间问题,因为单页哈希爆炸网站只会变得更加普遍.
归档时间: |
|
查看次数: |
4767 次 |
最近记录: |