4、HTTP协议
http协议(超文本传输协议):其实就是应用层的一种通信工具。当两个客户端通信的时候,那么这就需要一个协议来进行沟通。
作用:规范了浏览器和服务器的数据数据交互格式(没有也可以,但会阻碍其发展)
特点;
1. 简单快速
2. 灵活
3. 无连接
4. 无状态
- http协议永远都是客户端发起请求浏览器进行响应。
4.1、 交互流程
- 客户端和服务端建立连接
- 客户端发送请求数据到服务端(HTTP协议)
- 服务端收到请求后,进行处理,然后将处理结果响应客户端(HTTP协议)
- 关闭客户端和服务器端的连接(HTTP1.1后不会立即关闭)
4.2、请求格式
请求头:请求方式,请求的地址和协议版本
请求行:消息报头,一般用来说明客户端要使用的一些附加信息
空行:位于请求行和请求数据之间,空行是必须的
请求数据:非必需
4.3、 请求方式
get和post的区别:
get:
- 请求数据会以
?
的形式个开拼接在请求头中。 - 没有请求实体的部分
- 不安全,只能携带少量数据
为什么get只能携带少量的数据:
HTTP协议虽然没有规定请求数据大小。但浏览器对URL的长度是有限的,所以get不能携带大量的数据。
post:
- 请求数据在实体中发送
- 在URL中看不到具体的请求
- 数据安全适合数据量大的数据发送
4.4、常见状态码
- 200 OK //客户端请求成功
- 404 NOt Found //请求资源不存在
- 400 Bad Request //客户端请求有语法错误,不能被服务理解
- 401 Unauthorized //请求未经授权
- 500 Internal Server Erro //服务器代码写错了,你的 Java程序有问题