1、HTTP简介
HTTP就是超文本传输协议(HyperText Transfer Protocol)。是一个应用层协议,使用TCP链接进行可靠的传输
2、HTTP的主要特点
- 1.简单快速:客户向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有GET、HEAD、POST。每种方法规定了客户与服务器联系的类型不同。由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很快
- 2.无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间
- 3.无状态:HTTP协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时它的应答就较快。
3、统一资源定位符URL
HTTP的URL的一般形式是
http://<主机>:<端口>/<路径>
- 1.这里的主机指域名(最终会映射为IP地址)或者IP地址,用来定位机器的, 这里的机器一般是服务器
- 2.端口是指主机上的端口号(范围为0~65535),HTTP默认端口为80
- 3.路径是指主机上资源的位置(也可以是后端API指定的路径)
4、HTTP请求的流程
1.客户端发起TCP链接
2.服务端响应前两次握手
3.客户端将HTTP请求报文当第三次握手的报文
4.服务端将HTTP请求的文档当作第三次握手的响应
5.关闭TCP链接
5、http报文格式
1.请求报文
2.响应报文
详情查看cynwang的HTTP请求报文和HTTP响应报文
6、常用请求方法
请求方法 | 描述 | 区别 |
---|---|---|
GET请求 | 从服务器获得一份文档 | 类似于数据库的select |
POST请求 | 向服务器发送需要处理的数据 | 类似于数据库的insert |
PUT请求 | 将请求的主体部分存储在服务器上 | 类似于数据库的update |
DELETE请求 | 从服务器上删除一份文档 | 类似于数据库的delete |
**注意:**浏览器地址栏输入的都是GET请求,只有通过html的<form>
标签才可以发送其他请求
7、常见状态码
值 | 状态 | 原因 |
---|---|---|
200 | OK | 请求成功 |
400 | BAD REQUEST | 客户端请求有语法错误,服务端无法解析 |
404 | NOT FOUND | 请求的资源没有找到 |