http协议(No.29)
来源:互联网 发布:个人软件开发者 赚钱 编辑:程序博客网 时间:2024/06/11 23:45
http协议
1、http请求:
完整的http请求包括:请求行、若干消息头、实体内容
请求行:常用的请求方式有:GET、POST
消息头:(常用的)
解析:
Accept: text/html,image/* :客户机通过这个头,告诉服务器,它支持哪些数据类型
Accept-Charset: ISO-8859-1 :客户机通过这个头,告诉服务器,它支持的编码
Accept-Encoding: gzip,compress:客户机通过这个头,告诉服务器,支持哪种数据压缩格式
Accept-Language: en-us,zh-cn :客户机采用的那种语言
Host: www.it315.org:80::客户机通过这个头,告诉服务器,访问服务器的那台主机
If-Modified-Since: Tue, 11 Jul 2000 18:23:51 GMT::客户机通过这个头,告诉服务器,数据缓存的时间
Referer: http://www.it315.org/index.jsp::客户机通过这个头,告诉服务器,客户机从那个页面来的(防盗链);
User-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0):说明客户机操作系统信息,以及浏览器信息
Cookie:客户机通过这个头可以带点数据
Connection: close/Keep-Alive :连接 多次连接就是keep-Alive,连接后关闭:close
Date: Tue, 11 Jul 2000 18:23:51 GMT:请求的时间
请求字段:
2、http响应
完整的http响应包括:状态行、若干响应头、实体内容
状态行:
响应状态码分五类:
302、307请求服务器的一个资源,该资源让你去找别的资源
304请求服务器的一个资源,服务器告诉你从缓存中拿
响应头:
解析响应头:
Location:服务器通过这个头告诉浏览器去访问哪个页面,这个头通常配合302状态码使用
Content-Encoding: 服务器通过这个头告诉浏览器,回送的数据采用的压缩格式
Content-Length: 服务器通过这个头告诉浏览器,回送的数据的大小
Content-Type: 服务器通过这个头告诉浏览器,回送数据的类型
Last-Modified: 服务器通过这个头告诉浏览器,资源的最后修改时间
Refresh:服务器通过这个头告诉浏览器,定时刷新网页
Content-Disposition: attachment; filename=aaa.zip:服务器通过这个头告诉浏览器,以下载方式打开数据
ETag: W/"7777-1242234904000":缓存相关的头,为每一个资源配一个唯一的编号
Expires: 0
Cache-Control: no-cache
Pragma: no-cache 这三个头组合使用,让浏览器不要缓存数据
响应字段:
举例:(通知浏览器以下载的方式打开数据)
http请求:
//向服务器请求资源
GET /20111013/demo.do HTTP/1.1
//告诉服务器它支持以下格式的文件
Accept: image/jpeg, application/x-ms-application, image/gif, application/xaml+xml, image/pjpeg, application/x-ms-xbap, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, application/QVOD, application/QVOD, */*
//客户机采用zh-cn语言
Accept-Language: zh-cn
//说明客户机操作系统信息,以及浏览器信息
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C)
//客户机告诉服务器支持 gzip, deflate这两种数据压缩格式
Accept-Encoding: gzip, deflate
//访问localhost:8080
Host: localhost:8080
//连接多次连接就是keep-Alive
Connection: Keep-Alive
http响应:
//向客户机响应资源
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
//服务器通过这个头告诉浏览器,以下载方式打开数据
Content-Disposition: attachment; filename=a.jpg
Transfer-Encoding: chunked
//响应的时间
Date: Thu, 13 Oct 2011 14:56:55 GMT
- http协议(No.29)
- http协议-缓存控制:no-cache/must-revalidate/no-store
- No Http
- HTTP协议
- http协议
- HTTP协议
- HTTP协议
- HTTP协议
- http协议
- HTTP协议
- HTTP协议
- HTTP协议。。。
- HTTP协议
- HTTP协议
- HTTP协议
- HTTP协议
- HTTP协议
- http协议
- [Windows+Phone+7]+c#编码规范
- HTTP协议详解
- 通过HTTPWatch讲解+各个提示极其命令的功能
- win7下数巨安装后无法打开 http://127.0.0.1:8280/maxatx
- 第八课学习
- http协议(No.29)
- Ubuntu下串口工具
- UML的结构
- IO完成端口
- pku+acm+1011
- 浅析HTTP协议
- vs2010+opencv2.2安装
- linux学习基础教程虚拟机下测试
- 经典音乐4首