【发布时间】:2021-05-31 15:26:23
【问题描述】:
我正在尝试让两个服务进行通信。第一个 API 向用户公开。 第二个是隐藏的,可以处理文件。所以第一个可以重定向请求。 我想使用 aiohttp 使发布请求异步,但我遇到了这个错误:“解析正文时出错”
要重新创建错误: 假设这是服务器代码
from fastapi import FastAPI
from fastapi import UploadFile, File
app = FastAPI()
@app.post("/upload")
async def transcript_file(file: UploadFile = File(...)):
pass
这是客户端代码:
from fastapi import FastAPI
import aiohttp
app = FastAPI()
@app.post("/upload_client")
async def async_call():
async with aiohttp.ClientSession() as session:
headers = {'accept': '*/*',
'Content-Type': 'multipart/form-data'}
file_dict = {"file": open("any_file","rb")}
async with session.post("http://localhost:8000/upload", headers=headers, data=file_dict) as response:
return await response.json()
说明:
- 在 8000 端口上运行服务器,在您喜欢的任何端口上运行客户端
- 打开浏览器并在客户端打开文档。
- 执行 post 请求并查看错误
环境:
- aiohttp = 3.7.4
- fastapi = 0.63.0
- uvicorn = 0.13.4
- python-multipart = 0.0.2
Python 版本:3.8.8
【问题讨论】:
标签: python python-3.x aiohttp fastapi