HTTP请求报文

时间:2024-08-19 13:35:32

一个HTTP请求报文,有请求行request line、请求头部header、空行和请求数据组成。看下图可知:

HTTP请求报文

1、请求行

请求行:请求方法、请求地址和协议版本。

请求方法

HTTP/1.1 定义的请求方法有8种:GET、POST、PUT、DELETE、PATCH、HEAD、OPTIONS、TRACE。

最常的两种GET和POST,如果是RESTful接口的话一般会用到GET、POST、DELETE、PUT。

谓词:对于RestFul API来说谓词是非常重要的一个元素,WEB API就是使用谓词作为默认的路由方式,最常用的谓词有:POST\DELETE\PUT\GET,

这四个谓词对应了“增、删、改、查”四个动作(POST和PUT谁是增谁是改不同资料总有不同的说法,我其实有略微有点困惑啦……有定义说PUT是幂等操作,而POST不是,那PUT就更偏重于改而POST更偏重于增)。

请求地址

URL:统一资源定位符,是一种自愿位置的抽象唯一识别方法。

组成:< 协议> : //<主机> : <端口>/<路径>

端口和路径有时会省略(http默认端口是80)

HTTP请求报文

协议protocol   主机host  路径path  参数query string

协议版本

协议版本的格式: HTTP/主版本号.次版本号,常用的有HTTP/1.0 HTTP/1.1

2、请求头部

请求头部为请求报文添加了一些附加信息,由“名/值”对组成,每行一对,名和值之间使用冒号分隔。

常见请求头部如下

HTTP请求报文

请求头部的最后会有一个空行,表示请求头部结束,接下来为请求数据,这一行非常重要, 必不可少。

3、请求数据

可选部分,比如GET请求没有请求数据。

例如POST请求:

HTTP请求报文