如果数据是通过正常的put或者post方法发送的,那么payload就是一个http请求起始行紧接一个CRLF后面的那一部分。
同样的,我们可以将payload形式的参数。通过FormData()来组装。
在aiohttp中怎么实现发送payload呢?
from aiohttp import FormData
import aiohttp
async def post_payload(localpath): #我这里打算发送的是文件和一个日期
data = FormData()
data.add_field('file',
open(localpath, 'rb'),
filename='filename',
content_type='filetype')
data.add_field('payload',
payload_data)
async with aiohttp.ClientSession() as session:
async with session.post(url=url, data = data,headers=headers) as response:
data = await response.text()
return data
先用aiohttp的FormData()创建一个实例,然后用add_field方法,走正常aiohttp流程就行了。