我正在构建一个应用程序,使用Backbone.js和提供资产和JSON的私有API。JavaScript的网页应用程序的永久链接页面
应用程序中的大部分内容通过根'/'访问,而主干路由器根据散列(即/#about或/#view)提供视图。
问题是,当一个页面被分享到Facebook时,它会刮擦主页面,并且似乎无视任何超过散列标记的东西。
有没有什么好的经验法则的url路径或内容是不高度动态的,使应用程序更容易呈现给Facebook,谷歌等?
我正在构建一个应用程序,使用Backbone.js和提供资产和JSON的私有API。JavaScript的网页应用程序的永久链接页面
应用程序中的大部分内容通过根'/'访问,而主干路由器根据散列(即/#about或/#view)提供视图。
问题是,当一个页面被分享到Facebook时,它会刮擦主页面,并且似乎无视任何超过散列标记的东西。
有没有什么好的经验法则的url路径或内容是不高度动态的,使应用程序更容易呈现给Facebook,谷歌等?
您可以在您的网站上创建一个虚拟页面,其中包含仅供Facebook和Google使用的漫游器访问的完整网址。我不知道谷歌的用户代理,但Facebook的是列在这里:
https://developers.facebook.com/docs/reference/plugins/like/#scraperinfo
所以,你可以有一个空白页/项目/ itemid1 /那就是只对机器人访问,指向你的OG :到该空白页面的url标记,并为Facebook刮板提供正确的元数据。只要普通用户试图访问它,就会将它们重定向回正确的基于散列的URL。
谷歌有一些关于使AJAX应用程序可抓取的信息。