zoukankan      html  css  js  c++  java
  • 2. 文件上传请求构建的格式

    零、阅读前略读

    1. 下方的名词介绍

    1. 单字段指的是:只有文件,没其他key

    image.png

    1. 多字段指的是:有文件,也包括其他key

    image.png

    2. 传输格式介绍(看完下面的,回过头读比较明白)

    目前files参数最基本传输格式有2种:字典类型、列表类型;
    字典类型具体的格式为:{ key:value},key值为字符串,value值可以为元祖,或字典;
    列表类型具体的格式为:最外层为[],内层中每个元素的格式为列表或元祖;

    以下根据传输格式展开介绍

    一、单字段发送单个文件

    1、字典格式传递

    官方推荐使用的字典参数格式如下:
    image.png
    这个字典的key就是发送post请求时的字段名, 而字典的value则描述了准备发送的文件的信息;从上面可以看出value可以是2元组,3元组或4元组;

    这个元组的每一个字段代表的意思依次如下图所示 ;缺省的话则会使用默认值;一般情况下,我们只需要填写前三个字段,第四个字段暂时没遇上有什么用;
    image.png

    image.png

    2、列表嵌套元祖(或列表)传递

    image.png
    后面封装时,使用就是列表中第一个的简写,传文件对象即可


    格式小结:无论是使用字典还是列表格式,都只是为了将请求参数中的key和value值隔开,字典能写成{key:value},单个文件这么写没问题,但多个文件,key相同则语法错误,从而引出列表的这个传输格式(key,(参数1,参数2,参数3))

    [

    ](https://blog.csdn.net/qq_36502272/article/details/90675314)

    二、单字段发送多个文件

    1、字典参数形式

    image.png

    2、元组列表形式

    image.png

    三、多字段发送单个或多个文件

    上面介绍的是使用发送文件内容请求,而有时候我们在发送文件的同时还需要发送普通的数据字段,此时普通数据字段直接存在data参数中即可,把握一个原则就是:在post请求中,用files参数来接受文件对象相关的参数,非文件类型的字典key值,使用data传参,各传各的

    image.png

    参考文章:
    CSDN:
    https://blog.csdn.net/qq_36502272/article/details/90675314
    https://www.cnblogs.com/bainianminguo/p/12099532.html

    测试派:
    http://testingpai.com/article/1611909535724

    本文来自博客园,作者:中州韵,转载请注明原文链接:https://www.cnblogs.com/zhongzhouyun/p/14968057.html

  • 相关阅读:
    Windows提权列表
    Metasploit之多种后门生成
    Metasploit下添加新exploit
    Linux常用命令
    Drozer快速使用指南
    数值
    null, undefined 和布尔值
    数据类型概述
    JavaScript 的基本语法
    JavaScript 语言的历史
  • 原文地址:https://www.cnblogs.com/zhongzhouyun/p/14968057.html
Copyright © 2011-2022 走看看