Я хочу, чтобы реагировать на пользователь, как только я получил запрос, а затем продолжить, чтобы сохранить данные в базу данныхОтветить пользователь и продолжать работать функции асинхронного
async def index(request):
data = await request.post()
response.write("done")
async with request.app.mysqlpool.acquire() as conn:
async with conn.cursor() as cur:
await cur.execute("INSERT INTO ...")
Если я пытаюсь обернуть часть после запроса. пишите в отдельную функцию и вызывайте ее с помощью run_in_executor - она не позволяет ожидать ожидаемые функции внутри (TypeError: сопрограммы не могут использоваться с run_in_executor())
Есть ли способ сделать это в aiohttp?
В конце я сделал это так: body = json.dumps ({"status": "success"}). Encode ("utf8") resp = web.StreamResponse (headers = { "content-type «: "приложения/JSON", "Content-Length": ул (Len (тело)), }) ждут resp.prepare (self.request) resp.write (тело) ждут resp.drain() Ожидание resp.write_eof() – offline15