Я не могу написать функцию, которая может получить файл .txt через POST-запрос.
У меня есть файл .txt, который содержит фразу: Hello World!
на стороне сервера :
from fastapi import FastAPI, File
from starlette.requests import Request
import io
app = FastAPI()
@app.post("/post_text_file")
def text_function(request: Request,
file: bytes = File(...)):
text = open(io.BytesIO(file), "r").read()
return text # Hello World!
на стороне клиента:
import requests
url = 'http://localhost:8000/post_text_file'
r = requests.post(url,data=open('Hello World.txt'))
после запуска команды uvicorn main: app и запуска кода на стороне клиента я получаю следующий ответ:
На на стороне клиента: {'detail': 'Произошла ошибка при разборе тела'}
На стороне сервера: "POST / post_text_file HTTP / 1.1" 400 Bad Request