一、http协议
规定了客户端和服务端交流时的数据格式
二、特点
请求和响应都由三部分组成。
请求信息(3部分组成):
1.请求行 (由3部分组成)
a.请求的方式
b.请求的资源地址
c.请求协议
2.请求头信息(2部分组成)
a. 头名称
b. 头值
3.请求正文 (只有请求的类型是post才会有)
响应信息:(3部分组成)
1.响应行(由3部分组成)
a.响应协议
b.状态码
c.状态信息
2.响应头信息(2部分):
a.响应头
b.头值
3.响应正文.
三、get和post方式区别
- get方式请求参数会附加在url后,而post是看不到的,post相对安全
- get方式对提交的数据大小有限制(1k),post方式对数据大小没有限制.
四、响应的状态吗
200: OK
302(307) : 请求重定向
304 : 未修改
404: 找不到
500: 代码错误
五、请求头信息
- Accept: 浏览器告诉服务端, 浏览器可接受的MIME类型
- MIME类型: 相当于操作系统下的文件类型。 是由大类型和小类型组成: text/html; 对应的关系在conf/web.xml中查询
- Accept-Charset: 浏览器告诉服务端, 浏览器支持哪种字符集
- Accept-Encoding: 浏览器告诉服务端, 浏览器能够进行解码的数据编码方式,比如gzip
- Accept-Language: 浏览器告诉服务端,浏览器支持的语言种类
- Host: 浏览器告诉服务端,浏览器所在的主机
- Referer: 浏览器告诉服务端,当前页面从哪里来的。用处: 1. 用来记录广告的信息;2. 防盗链。
- Content-Type: 浏览器告诉服务端 ,内容类型
- If-Modified-Since: 浏览器告诉服务端修改的时间
- Content-Length: 浏览器告诉服务端 请求正文内容长度
- Connection: 浏览器告诉服务端,连接的状态
- Cookie: 浏览器告诉服务端 ,浏览器携带的Cookie
- Date: 浏览器告诉服务端,发送请求的时间
六、响应头信息
- Location : 服务端用来告诉浏览器,请求需要重定向.(必须结合状态吗302使用)
- Server : 服务端用来告诉浏览器,服务器的类型
- Content-Encoding: 服务端用来告诉浏览器,服务器对数据采用的编码
- Content-Length: 服务端用来告诉浏览器,响应正文的长度
- Content-Language: 服务端用来告诉浏览器,zh-cn服务发送的文本的语言
- Content-Type: 服务端用来告诉浏览器,你要用哪个码表来解析二进制数据
- Last-Modified : 服务端用来告诉浏览器,访问资源的最后修改时间
- Refresh:服务端用来告诉浏览器,多长时间刷新一次
- Cache-Control: no-cache (1.1)
- Pragma: no-cache (1.0)
- Set-Cookie: 服务端用来告诉浏览器,要存储的内容