1

我一直在查看 Hulu 的新网站,从开发人员的角度(以及设计师的角度)给我留下了深刻的印象。

我发现,除非您在 http/https 之间切换,否则您将获得完全来自 json 请求的内容。在保持浏览返回按钮支持以及允许直接访问每个 url 的同时拥有这种级别的 ajax 是一项巨大的壮举。

我想创建一个这样的网站作为学习体验。是否有任何类型的框架可以给我这种支持?

我以为我可以...

  • 利用 jQuery
  • 使用像 KnockoutJS 这样的客户端 MVVM 框架?
  • 使用 ASP.NET MVC 内容协商来提供由接受标头确定的 html 或 json。
  • 使用相同的代码库。
  • 客户端和服务器端渲染使用相同的模板
  • 提供更新页面标题/元标记/等的方法。

仍然会使用 Ajax 表单/小部件/等,因为我正在考虑使用 json 和客户端模板的页面级 ajax。

你怎么看?有什么框架吗?我可以遵循任何模式吗?

4

2 回答 2

0

最好先建立一个不支持 AJAX 的网站,然后在其上添加 AJAX。这样做意味着:

  • 没有 javascript 的用户已经可以访问您的网站
  • 用户已经可以直接访问任何 URL。

添加 AJAX 支持可以通过各种 javascript 库来完成。为了能够呈现 json 内容,您需要查看javascript 模板。当您添加 AJAX 支持(文件扩展名为 .ejs)时,您甚至会希望在服务器端使用 javascript 模板。这可能需要一些适当的库来在服务器上运行 javascript。

添加 AJAX 支持时,您需要使用“History.js”库来支持浏览器后退/前进/历史记录。

不犯错误。这是一个巨大的项目(除非您的网站只有几页)。因此,将所有 AJAX 支持添加到可能的最佳标准需要很长时间。

于 2012-09-02T01:52:42.827 回答
0

回答关于使用相同模板服务器端和客户端的要点:检查灰尘。它最初由akdubya开发,但后来被linkedin采用和增强。他们使用它在他们的移动应用程序客户端呈现模板。我个人在服务器端使用过它,效果很好。

于 2012-09-02T02:38:33.433 回答