requests的post提交form-data; boundary=????
提交这种用boundary分隔的表单数据时,有两种方法,一种是以传入files参数,另一种是传入data参数,data参数需要自己用boundary来分隔为指定的形式,而files参数则以元组的形式传入,代码如下
files = {
'TOKENKEY': (None, str(nowtime)), # 当前时间戳
'wbuploadpath': (None, ""),
'owner': (None, ""),
'token': (None, token),
'params': (None, 'eyJjb252ZXJ0cGFyYW1zIjpbeyJjb252ZXJ0VHlwZSI6ImltYWdldG90aHVtYiIsInBhcmFtcyI6eyJpbWdhdXRvcmVzaXplIjoidHJ1ZSIsImltZ2F1dG9yZXNpemV3aWR0aCI6IjEwMjQiLCJpbWdhdXRvcmVzaXplaGVpZ2h0IjoiMTAwMDAiLCJsaW1pdHdpZHRoIjoiMTYyMCIsImxpbWl0aGVpZ2h0IjoiMTAwMDAiLCJpbWd0aHVtYndpZHRoIjoiNjQwIiwiaW1ndGh1bWJoZWlnaHQiOiIxMDAwMDAiLCJsaW1pdGZpbGVzaXplIjoiMTA0ODU3NiJ9fSx7ImNvbnZlcnRUeXBlIjoiaW1hZ2V0b3JlZHVjZXF1YWxpdHkiLCJwYXJhbXMiOnsiaW1nYXV0b3Jlc2l6ZSI6InRydWUiLCJpbWdhdXRvcmVzaXpld2lkdGgiOiIxMDI0IiwiaW1nYXV0b3Jlc2l6ZWhlaWdodCI6IjEwMDAwIiwibGltaXR3aWR0aCI6IjE2MjAiLCJsaW1pdGhlaWdodCI6IjEwMDAwIiwiaW1ndGh1bWJ3aWR0aCI6IjY0MCIsImltZ3RodW1iaGVpZ2h0IjoiMTAwMDAwIiwibGltaXRmaWxlc2l6ZSI6IjEwNDg1NzYifX1dLCJhbGxvd2V4dHMiOiJqcGcsanBlZyxnaWYscG5nLGJtcCxnaWYscG5nLGRvYyxkb2N4LHBwdCxwcHR4LGV4Y2VsLHhscyx4bHN4LGJtcCxqcGcsanBlZyx6aXAscmFyIiwidXB0b2tlbiI6IjgxNjAzOTRCREE4NjRDRDZCRDlBRUUwNTY0OEUwRkNGIiwibm9kZWNvZGUiOiJsb2NhbCJ9' ),
'uploadfilejson': (None, ""),
'watermark': (None, ""),
'waterlocal': (None, ""),
'waterfilename': (None, ""),
'waterurl': (None, ""),
'classselect': (None, ''),
'wbtitle': (None, wbtitle),
'image': (None, "", 'application/octet-stream'),
'wbcontent': (None, wbcontent),
'yanzheng': (None, str(yanzheng))
}
data = """
------WebKitFormBoundaryYuBOtqhxWuNB9YP2
Content-Disposition: form-data; name="TOKENKEY" {}
------WebKitFormBoundaryYuBOtqhxWuNB9YP2
Content-Disposition: form-data; name="wbuploadpath" ------WebKitFormBoundaryYuBOtqhxWuNB9YP2
Content-Disposition: form-data; name="owner" ------WebKitFormBoundaryYuBOtqhxWuNB9YP2
Content-Disposition: form-data; name="token" {}
------WebKitFormBoundaryYuBOtqhxWuNB9YP2
Content-Disposition: form-data; name="params" eyJjb252ZXJ0cGFyYW1zIjpbeyJjb252ZXJ0VHlwZSI6ImltYWdldG90aHVtYiIsInBhcmFtcyI6eyJpbWdhdXRvcmVzaXplIjoidHJ1ZSIsImltZ2F1dG9yZXNpemV3aWR0aCI6IjEwMjQiLCJpbWdhdXRvcmVzaXplaGVpZ2h0IjoiMTAwMDAiLCJsaW1pdHdpZHRoIjoiMTYyMCIsImxpbWl0aGVpZ2h0IjoiMTAwMDAiLCJpbWd0aHVtYndpZHRoIjoiNjQwIiwiaW1ndGh1bWJoZWlnaHQiOiIxMDAwMDAiLCJsaW1pdGZpbGVzaXplIjoiMTA0ODU3NiJ9fSx7ImNvbnZlcnRUeXBlIjoiaW1hZ2V0b3JlZHVjZXF1YWxpdHkiLCJwYXJhbXMiOnsiaW1nYXV0b3Jlc2l6ZSI6InRydWUiLCJpbWdhdXRvcmVzaXpld2lkdGgiOiIxMDI0IiwiaW1nYXV0b3Jlc2l6ZWhlaWdodCI6IjEwMDAwIiwibGltaXR3aWR0aCI6IjE2MjAiLCJsaW1pdGhlaWdodCI6IjEwMDAwIiwiaW1ndGh1bWJ3aWR0aCI6IjY0MCIsImltZ3RodW1iaGVpZ2h0IjoiMTAwMDAwIiwibGltaXRmaWxlc2l6ZSI6IjEwNDg1NzYifX1dLCJhbGxvd2V4dHMiOiJqcGcsanBlZyxnaWYscG5nLGJtcCxnaWYscG5nLGRvYyxkb2N4LHBwdCxwcHR4LGV4Y2VsLHhscyx4bHN4LGJtcCxqcGcsanBlZyx6aXAscmFyIiwidXB0b2tlbiI6IjRBMDVGQzUwMjQzQzRGNkY4NTQ1QjQ4QjhGOTNCQzg5Iiwibm9kZWNvZGUiOiJsb2NhbCJ9
------WebKitFormBoundaryYuBOtqhxWuNB9YP2
Content-Disposition: form-data; name="uploadfilejson" ------WebKitFormBoundaryYuBOtqhxWuNB9YP2
Content-Disposition: form-data; name="watermark" ------WebKitFormBoundaryYuBOtqhxWuNB9YP2
Content-Disposition: form-data; name="waterlocal" ------WebKitFormBoundaryYuBOtqhxWuNB9YP2
Content-Disposition: form-data; name="waterfilename" ------WebKitFormBoundaryYuBOtqhxWuNB9YP2
Content-Disposition: form-data; name="waterurl" ------WebKitFormBoundaryYuBOtqhxWuNB9YP2
Content-Disposition: form-data; name="classselect" ------WebKitFormBoundaryYuBOtqhxWuNB9YP2
Content-Disposition: form-data; name="wbtitle" {}
------WebKitFormBoundaryYuBOtqhxWuNB9YP2
Content-Disposition: form-data; name="image"; filename=""
Content-Type: application/octet-stream ------WebKitFormBoundaryYuBOtqhxWuNB9YP2
Content-Disposition: form-data; name="wbcontent" {}
------WebKitFormBoundaryYuBOtqhxWuNB9YP2
Content-Disposition: form-data; name="yanzheng" {}
------WebKitFormBoundaryYuBOtqhxWuNB9YP2-- """.format(str(nowtime), token, wbtitle, wbcontent, yanzheng).encode('UTF-8')
#response = requests.post(url, headers=headers, data=data)
response = requests.post(url, headers=headers, files=files)
requests的post提交form-data; boundary=????的更多相关文章
- Sending forms through JavaScript[form提交 form data]
https://developer.mozilla.org/en-US/docs/Learn/HTML/Forms/Sending_forms_through_JavaScript As in the ...
- AngularJS $http配置为form data 提交
AngularJS $http配置为form data 提交 $scope.formData = {}; $http({ method: 'POST', url: '/user/', // pass ...
- 表单提交数据格式form data
前言: 最近遇到的最多的问题就是表单提交数据格式问题了. 常见的三种表单提交数据格式,分别举例说明:(项目是vue的框架) 1.application/x-www-form-urlencoded 提交 ...
- [整理]Ajax Post请求下的Form Data和Request Payload
Ajax Post请求下的Form Data和Request Payload 通常情况下,我们通过Post提交表单,以键值对的形式存储在请求体中.此时的reqeuest headers会有Conten ...
- http 请求参数之Query String Parameters、Form Data、Request Payload
Query String Parameters 当发起一次GET请求时,参数会以url string的形式进行传递.即?后的字符串则为其请求参数,并以&作为分隔符. 如下http请求报文头: ...
- ajax提交form表单
1. ajax提交form表单和不同的form表单的提交主要区别在于,ajax提交表单是异步提交的,而普通的是同步提交的表单. 2. from视图部分 <form id="loginF ...
- form data和request payload的区别
HTML <form> 标签的 enctype 属性 在下面的例子中,表单数据会在未编码的情况下进行发送: <form action="form_action.asp&qu ...
- Jquery通过Ajax方式来提交Form表单
今天刚好看到Jquery的ajax提交数据到服务器的方法,原文是: 保存数据到服务器,成功时显示信息. jQuery 代码: $.ajax({ type: "POST", url: ...
- ajax提交form表单资料详细汇总
一.ajax提交form表单和不同的form表单的提交主要区别在于,ajax提交表单是异步提交的,而普通的是同步提交的表单.通过在后台与服务器进行少量数据交换,ajax 可以使网页实现异步更新.这意味 ...
随机推荐
- Win7旗舰版仅供测试支持正版
系统效果展示 安装后唯一标准的桌面截图:(如发现安装后与本图不一致,均为第三方安装工具捆绑所为,请注意使用工具!慎用XX桃.XX菜.uXX之类的工具,建议使用推荐的方法安装) 如此清新简洁的安装界面, ...
- Django之models高级进阶技术详解
目录 一.常用字段 1.AutoField 2.IntegerField 3.CharField 4.自定义及使用char 5.DateField 6.DateTimeField 二.字段合集 三.字 ...
- 小白学 Python 爬虫(37):爬虫框架 Scrapy 入门基础(五) Spider Middleware
人生苦短,我用 Python 前文传送门: 小白学 Python 爬虫(1):开篇 小白学 Python 爬虫(2):前置准备(一)基本类库的安装 小白学 Python 爬虫(3):前置准备(二)Li ...
- TieredMergePolicy
setFloorSegmentMB多少MB一个层级,在此区间的segment分为一个floor. setMaxMergeAtOnce一次merge多少个segment. setSegmentsPerT ...
- ReactNative: 将自定义的ReactNative组件制作成第三方库的详细流程(制作-->发布)
一.简介 在讲本篇博文之前,需要你熟知怎么自定义ReactNative组件,然后才好学习将自定义的ReactNative组件制作成第三方库.本文中的自定义的ReactNative组件LoginMana ...
- 双射 - hash去重
题目描述Two undirected simple graphs and where are isomorphic when there exists a bijection on V satisfy ...
- Win10永久版低价购买及激活工具使用说明
目录 按 发展历程 用户界面 激活工具 按 Windows 10是由美国微软公司开发的应用于计算机和平板电脑的操作系统,于2015年7月29日发布正式版. Windows 10操作系统在易用性和安全性 ...
- python 打印乘法表
for i in range(1, 10): for j in range(1, i+1): print('%s * %s = %s' % (i, j, i*j), end=' ') print('' ...
- (转) exp1-2://一次有趣的XSS漏洞挖掘分析(2)
第一次和一套程序做了这么多次的斗争.今天基友又给我来信说,没得玩了.了解了下情况,是他拿着0day到处插,被人家发现了.还出了个公告,说所有***必须安装补丁.呵呵,性福总是走的这么突然.这乐子一 ...
- 机器学习环境配置系列二之cuDNN
1.下载cuDNN 前往: NVIDIA cuDNN home page. 进入下载 勾选Nvidia的协议复选框(流氓的选择,不勾选不能下载) 选择与安装的cuda版本一致的cudnn进行下载. 2 ...