Если следовать примеру с официальной документации aiohttp:
import aiohttp import asyncio async def main(): async with aiohttp.ClientSession() as session: async with session.get('http://python.org') as response: print("Status:", response.status) print("Content-type:", response.headers['content-type']) html = await response.text() print("Body:", html[:15], "...") loop = asyncio.get_event_loop() loop.run_until_complete(main())
то имеем здесь две асинхронные точки входа в запрос: session.get('http://python.org') as response и await response.text()
Насколько я понял из кода библиотеки, метод text получает тело ответа потоком и возвращает строку. При этом еще до выполнения мы уже можем видеть response.status 200, то есть сетевой запрос как бы выполнен или что, но и text потом выполняет сетевой запрос. Кто-то может объяснить немного это все в деталях? Что и почему делает каждый запрос?
И можно ли извне посмотреть когда и какие запросы выполняются? Что-то вроде tcpdump?