Backbone.js应用程序可以逐步增强,并可以被搜索引擎抓取吗?

我需要为我的下一个项目实现MVC JavaScript框架,但它和网站一样多,因为它是一个Web应用程序。 是否可以公开数据服务器端,然后解析URL以显示“JS版本”?

(我计划将Rails用于服务器端代码)

我写了一篇关于这个主题的小博客系列……

第一部分介绍了问题和以前的解决方案,以及当前的解决方案:HTML5的PushState(历史API)

http://lostechies.com/derickbailey/2011/09/26/seo-and-accessibility-with-html5-pushstate-part-1-introducing-pushstate/

第2部分展示了如何使用Backbone进行渐进增强,这样当你的服务器呈现HTML时,你可以让你的Backbone代码接管现有的HTML内容而不是呈现新的内容:

http://lostechies.com/derickbailey/2011/09/26/seo-and-accessibility-with-html5-pushstate-part-2-progressive-enhancement-with-backbone-js/

第3部分是我在会议上就此主题所做的演示文稿的(略微模糊)video:

http://lostechies.com/derickbailey/2011/10/06/seo-and-accessibility-with-html5-pushstate-part-3-the-video/

虽然它不是这个小系列的直接部分,但我还写了一篇关于使用PushState和PushState的博客文章。 该post的要点是:你不需要路由器:

http://lostechies.com/derickbailey/2011/10/17/tips-for-using-backbone-js-routers-with-html5-pushstate/

希望有所帮助

我不确定我是否以正确的方式理解你的问题。 我认为你有一些数据,你想使用rails在服务器端使用它,然后将它提供给你的javascript并继续处理数据? 那就对了?

那是的,这是可能的。 假设您有一个名为文章的模型,您可以通过以下URL访问一篇文章:

http://site.com/articles/1

然后你可以添加一个.xml

http://site.com/articles/1.xml

你会得到xml,因为Javascript可以解析xml。 这是rails的默认设置。