HTTP 是一个协议(服务器传输超文本到浏览器的传送协议),是基于 TCP/IP 通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)
HTTP 默认端口号为 80
HTTP 工作原理
浏览器作为 HTTP 客户端通过 URL 向 HTTP 服务端即 WEB 服务器发送所有请求
HTTP 请求方法
根据 HTTP 标准,HTTP 请求可以使用多种请求方法
HTTP1.0 定义了三种请求方法
GET(读取)
POST(创建)
HEAD(获取资源的元数据)
HTTP1.1 新增了六种请求方法
OPTIONS(获取信息,关于资源的哪些属性客户端是可以改变的)
PUT(完整更新)
PATCH(部分更新)
DELETE(删除)
TRACE(回显请求)
CONNECT(代理服务器)
HTTP 响应头
Allow(支持的请求方法)
Content-Type(文档所属 MIME 类型)
Expires(文档过期时间)
HTTP 状态码
客户端的每一次请求,服务器都必须给出回应。回应包括 HTTP 状态码和数据两部分
状态码包括 100 多种,覆盖了绝大部分可能会遇到的情况。每一种状态码都有标准的(约定)解释,客户端只需要查看状态码,就可以判断出发生了什么情况
状态码分类
1xx:相关信息
2xx:操作成功
3xx:重定向
4xx:客户端错误
5xx:服务器错误
常见状态码
200:服务器成功返回用户请求的数据
201:用户新建或修改数据成功
202:表示一个请求已经进入后台排队(异步任务)
204:用户删除数据成功
400:用户发出请求有错误,服务器没有进行新建或者修改数据的操作
401:表示用户没有权限(令牌、用户名、密码错误)
403:表示用户得到授权,但是访问被禁止
404:用户发出的请求针对的是不存在的记录,服务器没有进行操作
406:用户请求的格式不可得(比如用户请求 JSON 格式,但是只有 XML 格式)
410:用户请求的资源被永久删除,且不会在得到
422:当创建一个对象时,发生一个验证错误
500:服务器发生错误,用户无法判断发出的请求是否成功