一个网络请求的请求行,请求头,请求内容分别是什么

请求行:

有3种请求,告诉你你这个请求的最基本的信息和操作是什么

  • 请求方式,例如:GET、POST、PUT、DELETE等等

  • 请求URI,也就是访问的网址,它可以是一个绝对路径,也可以是一个相对路径。

  • 协议版本,表示该请求所对应的http版本协议,比如HTTP/1.1

例子,一个使用GET方法请求http://www.example.com/index.html页面的HTTP请求的请求行如下所示:

GET /index.html HTTP/1.1

请求头:

告诉你请求的最基本内容是什么

  • 本机的基本情况

  • 加密信息

    • Authorization:指定客户端提供的认证凭据。
  • 请求内容的格式,还有编码方式

    • Content-Type:指定请求实体的MIME类型; 例如:text/html; charset=utf-8
    • Accept-Language:指定客户端支持的语言;
    • Accept-Encoding:指定客户端支持的压缩算法;
    • Content-Length:指定请求实体的长度;
  • 访问的端口协议等信息

    • Host:指定被请求资源的主机名和端口号;
    • User-Agent:指定HTTP客户端的名称和版本号;
    • Accept:指定客户端能够接收的MIME类型;
    • Connection:指定客户端与服务器之间连接的类型;

一个常见的Get 头:

GET /index.html HTTP/1.1
Host: www.example.com
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.182 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive

一个常见的post头:

POST /submit-form HTTP/1.1
Host: www.example.com
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.182 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Content-Type: application/x-www-form-urlencoded
Content-Length: 28

name=John+Doe&email=johndoe@example.com

请求内容:

只有request为post或者put的时候才会用到这个请求内容,主要内容是发送的类型还有内容,常见的Content-Type类型包括:

  • application/x-www-form-urlencoded:用于提交表单数据的默认方式,请求内容是参数名和参数值的键值对,中间用“&”分隔。
  • multipart/form-data:用于上传文件和二进制数据,请求内容包含多个部分,每个部分都有自己的Content-Type和Content-Disposition头信息。
  • application/json:用于发送JSON格式的数据,请求内容是JSON对象或数组的字符串表示形式。
  • text/plain:用于发送纯文本数据,请求内容是纯文本。

以下是一个使用POST方法提交JSON数据的HTTP请求示例,其中请求内容为一个JSON对象:

POST /api/data HTTP/1.1
Host: www.example.com
Content-Type: application/json
Content-Length: 57

{
    "name": "John Doe",
    "age": 30,
    "email": "johndoe@example.com"
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值