[ HTTP实用指南| 青训营笔记]

66 阅读2分钟

这是我参与「第五届青训营 」伴学笔记创作活动的第 11 天

一.什么是HTTP

Hyper Text Transfer Protocol超文本传输协议 应用层协议,基于TCP协议 请求 响应 简单可扩展 无状态

image.png

二.协议分析

HTTP协议的报文是由header+body组成的。 image.png

请求方法

方法描述
GET请求指定的页面信息,并返回实体主体。
HEAD类似于 GET 请求,只不过返回的响应中没有具体的内容,用于获取报头
POST向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST请求可能会导致新的资源的建立或已有资源的修改
PUT从客户端向服务器传送的数据取代指定的文档的内容
DELETE请求服务器删除指定的页面
CONNECT建立一个到由目标资源标识的服务器的隧道
OPTIONS允许客户端查看服务器的性能
TRACE回显服务器收到的请求,主要用于测试或诊断
PATCH用于对资源应用部分修改

Sate Method:不会修改服务器资源的方法(GET、HEAD、OPTIONS) IDempotent Method(幂等方法):同样的请求只执行一次和连续执行多次效果是一样的,服务器的状态也是一样的。所有的safe method都是幂等的(GET、HEAD、OPTIONS、PUT、DELETE)

状态码

1xx:指示信息,表示请求已接收,继续处理

2xx:成功,表示请求已被成功接收、理解、接受

3xx:重定向,要完成请求必须进行更进一步的操作

4xx:客户端错误,请求有语法错误或请求无法实现

5xx:服务端错误,服务端未能实现合法的请求。

在这些状态码中,比较常见的有:

200 OK —客户端请求成功

301 永久重定向

302 临时重定向

401 请求未经授权

404 请求资源不存在,可能是输入了错误的URL

500 服务器内部发生了不可预期的错误

504 Gateway Timeout-网关或者代理的服务器无法在规定的时间内获得想要的响应

常用请求头

image.png

常用响应头

image.png

三.实战

Ajax之XHR

image.png

Ajax之fetch

image.png

标准库http/https

image.png

常用请求库axios

image.png