postman上传文件(multipart/form-data请求)

postman上传文件(multipart/form-data请求)

背景

网页的form表单中,如果存在上传文件的表单,则需要将form标签设置enctype="multipart/form-data"属性,意思是将Content-Type设置成multipart/form-data。

那么如何使用 postman发送 multipart/form-data请求呢?

基础原理:什么是multipart/form-data请求

Content-Type: multipart/form-data; boundary=

表单中的 enctype 属性规定在发送到服务器之前应该如何对表单数据进行编码。

enctype有三种类型

  • application/x-www-urlencoded:数据被编码成以’&‘分隔的键-值对, 同时以’='分隔键和值. 非字母或数字的字符会被 百分比编码(percent-encoding)
  • multipart/form-data:不做编码,发送二进制数据
  • text-plain:空格转换为 “+” 加号,但不对特殊字符编码

multipart/form-data 定义在 rfc2388 中,最早的 HTTP POST 是不支持文件上传的,给编程开发带来很多问题。但是在1995年,ietf 出台了 rfc1867,也就是《RFC 1867 -Form-based File Upload in HTML》,用以支持文件上传。Content-Type 的类型扩充了multipart/form-data 用以支持向服务器发送二进制或者非ASCALL(no-ascll)数据。

multipart/form-data重要规范特征

  • 必须post方式发送数据;
  • Content-Type格式为multipart/form-data; boundary=${boundary}。满足条件的提交,浏览器会自动创建boundary。

postman上传文件

postman的 form-data: 就是http请求中的multipart/form-data,

  1. 将请求方式选择为post
  2. 点击里面的【form-data】选项,在弹出的选项列表里,点击【file】选项栏(如图所示)
    在这里插入图片描述
    填写key,选择你要上传的文件:
    在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/inthat/article/details/128358047