当前位置: 首页> 书评> 正文

Ajax模式与最佳实践《模式之应用场景或例子》

  • 小小评论家小小评论家
  • 书评
  • 2023-03-26 09:42:36
  • 74

当使用xmlHttpRequest时,记住三件事:使用一个工厂模式来提供跨浏览器支持;使用异步请求来避免浏览器被锁住;打开安全选项,允许跨域的调用(由此来避免相同来源策略,应该么?)。

这些模式在现实中我们都能找到应用的场景和例子,但感觉把这些东西归结为模式有点牵强。

内容分块模式:顾名思义,内容分块。左边是导航栏,中间是主内容区。选择其它导航时,内容区重新获取,而无须重新更新导航栏。

缓存控制器模式:google map(预见式缓存).

置换模式:用来分离资源(url)与表现(例如html或者xml)。例子:google用web浏览器或者wap浏览器都可以访问,url相同,但显示不同。

解耦导航模式:跟内容分块模式的区别在于,这个模式重点考虑如何去响应或者处理这个url。例子:豆瓣的星级评价功能。

表现变形模式:可以用在当数据从一种表现转换到另一种表现的时候。

持久通信模式:例子:开心网的好友在线状态。注意这个模式的实现。因为服务器不可能找到客户端,所以只有让客户端去轮询服务器以查询信息。而这个“轮询”,我们得想办法让它减轻对服务器的负担。

状态导航模式:有没有遇到填好一个表格之后,按了回退,一切都消失了?有没有遇到两个浏览器窗口同时打开一个页面,然后分别进行修改以及提交,结果数据出现同步问题?状态导航模式就是解决这两个问题。

无限数据模式:此模式建立在持久通信模式基础上。生成的结果以增量生成的方式产生。

基于REST的MVC模式:这里的model是指其他服务器(例如web资源、数据源),控制器负责管理来自其他服务器的内容,而视图就是读取数据的REST客户端。也可以用此模式来解决需要跨域访问时带来的安全限制。

阅读全文