aiohttp
Или есть какие то более продвинутые ассинхронные веб фреймворки?
ну FastAPI достаточно популярный, но хуево спроектированный. Есть Starlite (не путать со Starlette), который переименовали в Litestar
Смотря что ты имеешь ввиду?
Есть Blacksheep который не переименовали в Neoteroi-web
Чистый aiohttp я бы не брал если нужно пилить обычный REST API
Да там даже не апи, а скорее сайтик. Возможно потом будет и апи, так побаловаться как оно работает. Изучить технологию
Сваггер спеку придется руками писать
Потому что это очень низкоуровневый фреймворк, он предоставляет парсинг запросов и роутинг и больше ничего сверху
А асинхронность тут зачем?
Ну, так если API First, то ее все равно руками писать
скорость
Ну потому что в синхронности я уже на фласке написал. Теперь вот ассинхроность хочу попробовать
Сериализацию, десериализацию, DI придется писать в aiohttp руками
Воооот сериалицзация как раз таки возможно мне понадобится
Сериализация и десериализация делается элементарно через декоратор. Можно даже засунуть туда анализ тайпхинтов. Смотря на диай, которые предлагают остальные фреймворки, мне кажется, что лучше все руками делать, ну или взять библиотеку di, если не боишься нерелизных версий
Ну в aiohttp тебе просто придется пересобирать уже то что есть в других фреймворках из коробки
Это, ну вот совсем не сложно. Зато он тебе не навязывает кривых батареек
Думаю пора собрать
Невыгодно тратить свое время на это
Целых 15 минут. Ну, может, 30
Полное и тестируемое решение по сериализации/десериализации за 30 мин?
def serialize_deserialize(input_type): def decorator(func): @wraps(func) async def decorator(request): param = input_type.parse_obj(await request.json()) result = await func(param) return web.json_reponse(code=200, data=result.dict()) return decorator Еще можно добавить анализ тайпхинтов, маппинг исключений, и также маппинг статус кодов по хттп
Неясно что будет если нам надо не только жсон, но и форм дату поддерживать Неясно, что будет если нам надо передать кастомные параметры в жсон преобразователь Ты все это за пол часа не напишешь
Я это написал за 5 минут, значительное время из которых я искал, какой проект пайчарма открыть. Формы aiohttp умеет парсить, насколько я помню. Все остальные проблемы, которые ты перечислили не проблемы вовсе. Так что я думаю, что тут можно спокойно уложиться в 30 минут
Обсуждают сегодня