1.什么是Http协议
客户端与服务端进行交互、通讯的时候,遵循的一种规范、规则!
规定了客户端访问服务器的时候带的数据以及服务端响应的时候返回的数据。
2.版本
1. 版本1.0
客户端请求得到服务端响应之后,连接会断开。
2.版本1.1
客户端请求数据,服务器返回后, 连接还会保持着。 除非服务器或者客户端关掉。
有一定的时间限制,如果超时,那么连接会自己断掉。
3.Http请求数据
请求的数据里面包含三个部分内容 : 请求行 、 请求头 、请求体
1.请求行
POST /stu/servlets/servlet/StuServlet HTTP/1.1
POST: 请求的类型 ,常用的有GET/POST
/stu/servlets/servlet/StuServlet : 请求路径
HTTP/1.1 : 协议版本
2.请求头
Accept: 客户端向服务器端传递能支持的数据类型。
Referer : 请求的地址路径,全路径。
Accept-Language: 支持语言格式。
User-Agent: 用户代理,当前访问的客户端信息。
Content-Type: 提交的数据类型,经过urlencoding编码的form表单的数据。
Accept-Encoding: gzip, deflate : 压缩算法 。
Host : 主机地址。
Content-Length: 数据长度。
Connection : Keep-Alive 保持连接。
Cache-Control : 对缓存的操作。
3.请求体
浏览器发送给服务器的数据
发送的数据呈现的是key=value ,如果存在多个数据,那么使用 & eg:key1=zhang&key2=li
4.Http响应数据
请求的数据里面包含三个部分内容 : 响应行 、 响应头 、响应体
1.响应行
HTTP/1.1 200 OK HTTP/1.1:协议版本 ; 200:状态码; OK:对应前面的状态码
常见的状态码:
200 : 成功,正常处理,得到数据
403 : for bidden 拒绝
404 : Not Found
500 : 服务器异常
2.响应头
Server: 服务器是哪一种类型。 Tomcat
Content-Type : 服务器返回给客户端你的内容类型
Content-Length : 返回的数据长度
Date : 通讯的日期,响应的时间
5.Get 和Post请求区别
1.POST
1.数据是以流的方式写过去,不会在地址栏上面显示,一般提交数据到服务器使用的都是POST。
2.传输的数据大小没有限制。
2.GET
1.会在地址栏后面拼接参数,所以有安全隐患。
2.对数据有限制。