HTTP请求与响应
三种常见HTTP请求方法
HTTP请求方法规定了客户端对服务器资源的操作类型,核心用于构建HTTP请求报文,以下是最常用的三种方法:
-
1. GET方法定义:用于从服务器获取(查询)资源的请求方法,是最常用的HTTP请求方法。
-
核心作用:请求服务器返回指定的资源,如访问网页、查询数据等。
-
关键特点:参数会拼接在URL末尾(可见),传输数据量有限(受URL长度限制),一般不用于修改资源,具有幂等性(多次请求结果一致,不改变服务器状态)。
-
适用场景:浏览网页、搜索内容、获取图片等静态资源。
2. POST方法定义:用于向服务器提交数据,请求服务器处理或存储数据的请求方法。
核心作用:向服务器发送数据(如表单提交、上传文件),通常会导致服务器资源状态发生变化。
关键特点:参数封装在请求体中(不可见,相对安全),传输数据量无严格限制,不具有幂等性(多次提交可能产生不同结果,如重复提交订单)。
适用场景:用户登录、注册表单提交、文件上传、提交订单等。
3. PUT方法定义:用于向服务器提交数据,请求服务器更新指定资源的请求方法。
核心作用:替换或更新服务器上已存在的资源(若资源不存在,部分服务器会创建新资源)。
关键特点:参数可放在请求体中,具有幂等性(多次执行相同请求,结果一致,即最终资源状态相同)。
适用场景:更新用户信息、修改商品详情、替换文件内容等。
HTTP的请求报文结构
请求报文由4个部分组成,按顺序依次为:请求行、请求头、空行、请求体(可选)
-
请求行:核心指令部分,包含3个要素——HTTP请求方法(如GET、POST)、请求URL(目标资源地址)、HTTP协议版本(如HTTP/1.1),三者用空格分隔;
-
请求头:客户端向服务器传递的额外信息,以键值对形式存在,用于说明客户端状态、请求偏好等;
-
空行:强制分隔符,标志请求头结束,即使无请求体也必须存在;
-
请求体:可选部分,仅用于向服务器提交数据(如POST、PUT请求),存放表单参数、JSON数据等,GET请求无请求体。
(二)HTTP响应报文结构
响应报文与请求报文结构对应,由4个部分组成:状态行、响应头、空行、响应体
-
状态行:服务器对请求的核心反馈,包含3个要素——HTTP协议版本、状态码(如200、404)、状态描述(对状态码的文字说明,如OK、Not Found);
-
响应头:服务器向客户端传递的额外信息,以键值对形式存在,用于说明响应数据属性、服务器状态等;
-
空行:强制分隔符,标志响应头结束;
-
响应体:服务器返回的核心数据,如HTML页面代码、JSON接口数据、图片二进制数据等。
请求头是客户端向服务器传递的辅助信息,以下是最常用的请求头:
-
User-Agent:告知服务器客户端的具体类型(如浏览器型号、操作系统),示例:Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36,服务器可据此返回适配资源;
-
Cookie:携带客户端本地存储的Cookie信息(服务器之前写入),用于身份识别、状态保持(如记住登录状态);
-
Accept:说明客户端可接收的响应数据格式,示例:text/html, application/json,服务器据此返回对应格式数据;
-
Content-Type:仅POST、PUT等带请求体的请求使用,说明请求体的数据格式,示例:application/x-www-form-urlencoded(表单数据)、application/json(JSON数据);
-
Host:指定目标服务器的域名和端口,示例:www.baidu.com:80,用于服务器在多站点部署时定位具体站点;
-
Connection:指定连接方式,如keep-alive(保持连接)、close(关闭连接),keep-alive可复用TCP连接,提升效率。

浙公网安备 33010602011771号