www.wapease.com ·新闻动态 ·技术专题 ·WAP开发 ·用户专区 ·企业专区 ·相关资源 ·网络知识
首页>WAP开发技术>WAP高级教程>正文    

wap中级教程


WAP技术站:www.wapease.com  将本文推荐给你的QQ或MSN好友 加入收藏


另外一种控制缓存时间的方法是使用前面提到过的Expires,不过这种方法只能告诉用户终端:只要过了指定时间,无论什么时候访问页面都要刷新。如果你下次要控制时间,只能改变Expires里的时间值。

3、 禁止对URL的缓存 [TOP]
对于快速变化的内容,一般都会希望每次都得到最新的数据。所以这个时候要完全禁止对相关网页的缓存。方法有三种:
* 设定Cache-Control: no-cache;
* 设定最大缓存时间为0,Cache-Control: max-age=0;
* 设定缓存到期日为一个早就过去的日期,Expires: Mon, 1 Jan 1990 00:00:00 GMT。

实际上,后两种不是最好的选择。首先这样会多占用终端的处理时间,因为当碰到这个DECK时,终端需要计算一下过期时间。其次,这样会多占用一些字节,而且在表达上也不够清楚。

三、验证(validation)和历史堆栈(History Stack) 在HTTP1.1中对缓存进一步提出了验证的概念。验证的目的就是检验缓存项目是否在有效期内。由于历史堆栈的存在,WAP终端上的验证过程变得有点复杂。

WAP标准规定所有的WAP设备都至少要有可以容纳10-个项目的历史堆栈。当用户按下由<go>或其他转向指令的定义的前行(forward)链接时,URL被推(push)入堆栈。如果按下由<prev>定义的后退(backward)链接,URL被弹(pop)出。

一般情况下,所有的前行链接都会被验证,而后退链接则不会,因为它已经在cache里了。可是我们有时候还是希望当用户按下后退键时依然能够得到最新的数据。如果终端总是不予验证的话,那用户只好找到主菜单再重新进入那个页面。

幸运的是,我们用Cache-Control:must-revalidate就可以强迫用户终端在用户按back时对URL进行验证。当然,进行验证并不是说该页面会立刻重新读取,而是根据他是否过期来决定。如果没有过期,验证的结果仍然是显示缓存中的页面。

如果你需要每次back都重新读取页面,用Cache-Control:must-revalidate, no-cache可以实现。另外,把 no-cache换成max-age=300就可以在back时对已缓存了300秒的页面进行刷新。

本新闻共6页,当前在第5页  1  2  3  4  5  6  

上一篇:WAP中推送技术的分析与设计
下一篇:WAP与PHP - 基础篇
Google
 
关于“wap中级教程”的相关内容连接
·构建动态 WAP 站点 (3) - 数据库的输出
·构建动态 WAP 站点 (2) - 你的第一个WML页面
·构建动态 WAP 站点 (1) - Server设置
·WML,Apache,和 PHP 的介绍
·jsp制作wap网站时中文字符问题的一些解
·WAP与PHP - 附件
·WAP与PHP - 进阶篇 之二
·WAP与PHP - 进阶篇 之一
·WAP与PHP - 基础篇
·WAP中推送技术的分析与设计

万易网(wapease.com)版权所有  服务声明

Copyright © 2003-2008 Wapease Network, All Rights Reserved