Http之Multipart介绍

1. 什么是Multipart

Multipart:多部分对象集合。可以容纳多份类型的数据。
看不懂?没关系,看完例子就懂了

2.包含的对象

  • multipart/form-data
    哎呀,这个我熟,传文件必写的。以前只是知道怎么用,却不知道为什么要这么用。看完这篇文章你就懂了
  • multipart/byteranges

1) multipart/form-data

例子:
假设现在有个界面长这样:
在这里插入图片描述

当填写了用户名,选择了文件,点击提交后,抓取报文是这样式的:

Content-Type:multipart/form-data;boundary=AaB03x
--AaB03 <!--用户名的部分-->
Content-Disposition:form-data;name="username"
username

--AaB03 <!--文件的部分-->
Content-Disposition:form-data;name="pics";filename="file1.txt"
Content-Type:text/plain

...(file1.txt的数据)...
--AaB03--

boundary=AaB03x后面的AaB03x是随机生成的。每两个--AaB03之间是form的一个键值对,最后以--AaB03--表示结尾,也有以--AaB03表示结尾的。

2) multipart/byteranges

在返回206状态码时使用,用于返回Range请求的多部分数据。
例子:
请求:

GET /filename.pdf HTTP/1.1
...
Range:bytes=5000-10000,12000-150000
....

响应:

HTTP/1.1 206 Partial Content
...
Content-Type:multipart/byteranges;boundary=xxxxx
--xxxxx
Content-Type:application/pdf
Content-Range:bytes=5000-10000

...(指定范围的数据)...
--xxxxx
Content-Type:application/pdf
Content-Range:bytes=12000-15000

...(指定范围的数据)...
--xxxxx--
  • 6
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值