设计模式不是要遵循的标准,只不过是对增进行之有效的解决方案的总结。每个模式都凝聚了开发人员社区的集体智慧,而每个开发人员都可以决定是否在其应用中实现某个模式。
第一部分:通信控制模式
1.预先获取
合理假设的准则,预测并预载入与用户可能的下一步相关的信息,可以使应用程序更快、反应更迅速。只有从逻辑上确认该信息是用户下一步请求的所必需的,才预先获取它。
Demo:Ajax分页显示示例,二级菜单,加载地址簿和联系人等。
2.提交流处理模式 Submission Throttling
提交节流模式,可以将要发送到服务器的数据存入客户端的缓存中,然后在预定的时间一次性发送数据。
注意事项:一般不用于关键任务的数据。如果数据必须在一个特定的时间范围内传送到服务器,最好还是采用传统的表单,以确保信息及时准确地传送。
Demo:表单增量验证示例,字段增量验证示例
3.定期刷新模式
Demo:新评论提示示例
4.多阶段下载模式(Multi-Stage Download)
Demo:附加信息链接示例
第二部分:失效处理模式
问题:服务器端出错,Ajax请求没有发送到服务器端。
两种错误类型:给出了状态码的服务器错误;服务器不可达(例如:服务器宕机或者因特网连接失败)
解决方案:
1.取消等待处理的请求
2.重试