判断网页是否修改
来源:互联网 发布:济南锋刃网络 编辑:程序博客网 时间:2024/05/21 18:44
静态网页
- Last-Modified
在浏览器第一次请求某一个URL时,服务器端的返回状态会是200,内容是你请求的资源,同时有一个Last-Modified的属性标记此文件在服务期端最后被修改的时间,格式类似这样:
Last-Modified: Fri, 12 May 2006 18:53:33 GMT
客户端第二次请求此URL时,根据 HTTP 协议的规定,浏览器会向服务器传送 If-Modified-Since 报头,询问该时间之后文件是否有被修改过:
If-Modified-Since: Fri, 12 May 2006 18:53:33 GMT
如果服务器端的资源没有变化,则自动返回 HTTP 304 (Not Changed.)状态码,内容为空,这样就节省了传输数据量。当服务器端代码发生改变或者重启服务器时,则重新发出资源,返回和第一次请求时类似。从而保证不向客户端重复发出资源,也保证当服务器有变化时,客户端能够得到最新的资源。
- ETag
HTTP 协议规格说明定义ETag为“被请求变量的实体值” (参见 —— 章节 14.19)。 另一种说法是,ETag是一个可以与Web资源关联的记号(token)。典型的Web资源可以一个Web页,但也可能是JSON或XML文档。服务器单独负责判断记号是什么及其含义,并在HTTP响应头中将其传送到客户端,以下是服务器端返回的格式:
ETag: “50b1c1d4f775c61:df3”
客户端的查询更新格式是这样的:
If-None-Match: W/”50b1c1d4f775c61:df3”
如果ETag没改变,则返回状态304然后不返回,这也和Last-Modified一样。
动态网页
对于绝大多数动态网页如ASP,JSP来说,LastModifed就是服务器
发送Response的时间,并非网页的最后跟新时间,而Etag通常为空值。
- MD5
每次下载网页时,把服务器返回的数据流ResponseStream先放在内存缓冲区,然后对ResponseStream生成MD5数字签名S1,下次下载同样生成签名S2,比较S2和S1,如果相同,则页面没有修改
- 判断网页是否修改
- 判断网页是否存在
- 判断网页是否加载完成
- 判断网页URL是否存在
- 判断网页URL是否存在
- [IsPostBack]-判断网页是否第一次被浏览
- 用INDY判断网页是否存在
- ASP如何判断网页是否超时
- C# 判断网页是否下载完毕
- js判断网页对象是否存在
- 判断是否能打开服务器网页
- 判断Iframe中的网页是否加载成功
- 网页判断客户端是否安装某OCX
- js判断网页对象是否存在
- 如何判断一个网页是否加载完毕
- 判断一个网页是否适合手机浏览
- C#中判断网页是否能够响应
- Webbrowser判断网页控件是否存在?
- hadoop上作业执行方法
- 两个简单实例,学会使用fragment
- HOOK Openprocess时间进程防查杀
- linux系统中推出ping命令
- brk(), sbrk() 用法详解
- 判断网页是否修改
- transform属性
- Python 提取两个列表的交集
- R语言数据框
- UIScrollView 实践经验
- ios Segue传值
- ubuntu命令大全
- 用户·角色·权限·表
- RegEnumValue读取注册表不完整问题