Ar gyfer un cais anghydamserol drwy ddirprwy HTTP heb ddilysu, cadwch y llwybr ar session.get(). Ychwanegwch aiohttp at y prosiect os oes angen:

uv add aiohttp

Newidiwch y cyfeiriad dogfennol isod am eich gwrandäwr HTTP neu ymgeisydd o’r rhestr dirprwyon HTTP. Rhaid iddo ganiatáu CONNECT i’r gyrchfan HTTPS; mae pwynt terfyn sy’n cefnogi SOCKS yn unig angen cysylltydd addas yn lle’r arg proxy hwn.

import asyncio
import aiohttp

async def main():
    timeout = aiohttp.ClientTimeout(total=15, connect=5)
    async with aiohttp.ClientSession(
        timeout=timeout,
        trust_env=False,
    ) as session:
        async with session.get(
            "https://example.com/",
            proxy="http://203.0.113.10:8080",
        ) as response:
            print(response.status)
            print((await response.text())[:200])

asyncio.run(main())

Mae’r cais yn argraffu ei statws HTTP a 200 nod cyntaf testun yr ymateb. Mae 403 neu 429 yn dal yn ymateb y gellir ei archwilio yma; galwch response.raise_for_status() os dylai’r ap droi statws aflwyddiannus yn eithriadau. Mae’r rheolwyr cyd-destun anghydamserol yn cau’r sesiwn a’r ymateb pan ddaw eu blociau i ben, gan gynnwys gydag eithriad.

Mae’r gyllideb total 15 eiliad yn cwmpasu gweithrediad y cais. Mae’r gyllideb connect 5 eiliad yn cynnwys aros am gysylltiad ar gael o’r pwll, felly gall pwll prysur ei defnyddio cyn agor soced newydd. Mae’r gwahaniaeth hwn yn bwysig wrth addasu’r alwad unigol i wiriadau cydamserol.

Mae trust_env=False yn cadw’r llwybr a ddangosir yn benodol. Nid yw aiohttp yn darganfod newidynnau amgylchedd dirprwy yn ddiofyn; ni fydd allforio un mewn terfynell arall yn ffurfweddu’r alwad hon. Dewiswch trust_env=True dim ond pan mai amgylchedd etifeddol y broses yw’r polisi llwybro a fwriadwyd.

Erthyglau cysylltiedig