1.什么是协议?
数据格式.
2.HTTP协议.
Http是(Hypter text transfer protocol) 超文本传输协议.
专门用来定义浏览器访问web资源的格式的一种应用层的协议.
HTTP协议就是用于定义客户端与web服务器通迅的格式
HTTP1.0 与 HTTP 1.1的区别:
在HTTP1.0协议中,客户端与web服务器建立连接后,只能获得一个web资源,面向无状态.
HTTP1.1协议,允许客户端与web服务器建立连接后,在一个连接上获取多个web资源
3.HTTP请求头详解:
Accept: text/html,image/* 用来通知服务器,客户端接收的数据的类型.
Mime 协议描述的类型.
大类型/小类型
Accept-Charset: ISO-8859-1 客户机采用的字符编码.
Accept-Encoding: gzip,compress 客户机支持的数据压缩格式 gzip (*********重要)
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) 客户端 采用 浏览器类型.
Connection: close/Keep-Alive 请求完成后,是否保存连接.
Date: Tue, 11 Jul 2000 18:23:51 GMT
4.HTTP响应
5.常用的响应状态码
第一部分: 响应行 HTTP/1.1 200 OK
常用的状态含义:
200 : 表示 服务器处理的很完美
302 : 与location响应头一起实现请求重定向 (*********重要)
304/307 : 通知浏览器去拿缓存.
404: 请求的资源找不到. 不存在.
500: 服务器端出现错误.
1xx: 信息不完全, 服务器要继续接受更多的请求信息才能完成响应.
2XX: 表示处理的很完美 . 一切OK
3XX: 服务器已经回送了响应,但是需要客户端进一步发出请求,来完成整个请求过程.
4XX: 表示请求的资源有问题 ---- 请求的资源不存在,没有权限.
5XX: 表示服务器端内部出现错误.
6. 常用的响应头详解:
Location: http://www.it315.org/index.jsp 与302 状态码一起实现请求重定向. (*********重要)
Server:apache tomcat 用于告诉客户机, 服务器的类型
Content-Encoding: gzip 用于告诉客户机,服务器发送的数据采用的压缩格式. gzip (*********重要)
Content-Length: 80 用于告诉客户机,服务器发送的数据大小 bytes
Content-Language: zh-cn 用于告诉客户机,服务器发送的数据采用的语言.
Content-Type: text/html; charset=GB2312 用于告诉客户机,服务器发送的数据的类型.
Last-Modified: Tue, 11 Jul 2000 18:23:51 GMT 与If-Modified-Since 实现缓存.
Refresh: 1;url=http://www.it315.org 控制浏览器的刷新频率
Content-Disposition: attachment; filename=aaa.zip 下载的方式去打开文件. (文件上传与下载时讲)
下面这三个响应头用来 实现与缓存相关的头:
Expires: -1
Cache-Control: no-cache
Pragma: no-cache
Connection: close/Keep-Alive 响应 完成后,是否保存连接.
Date: Tue, 11 Jul 2000 18:23:51 GMT
web资源访问流程图