requests — HTTP-client¶
De requests module biedt een minimale HTTP/HTTPS-client-API vergelijkbaar met de Python requests bibliotheek. Elke request-functie retourneert een requests.Response object.
Voorbeeld:
import requests
# GET a JSON resource.
r = requests.get("https://httpbin.org/get")
print(r.status_code, r.reason)
print(r.json())
# POST JSON.
r = requests.post(
"https://httpbin.org/post",
json={"id": 1, "value": 42},
headers={"X-Source": "openmv"},
)
print(r.json())
Response-klasse¶
- class requests.Response(code: int, reason: str, headers: bytes = None, content: bytes = None)¶
Vertegenwoordigt een HTTP-respons. Instanties worden geretourneerd door
requests.requesten de helpers per methode.- encoding: str¶
String-codering die wordt gebruikt om
requests.Response.headersenrequests.Response.contentte decoderen. Standaard"utf-8".
- headers: str¶
Responsheaders gedecodeerd met
requests.Response.encodingen geretourneerd als eenstr.
- content: str¶
Responsbody gedecodeerd met
requests.Response.encodingen geretourneerd als eenstr.
- json() dict¶
Parseert
requests.Response.contentals JSON en retourneert het resulterende object.
Functies¶
- requests.request(method: str, url: str, data: bytes | None = None, json: Any | None = None, files: dict | None = None, headers: dict = {}, auth: tuple | None = None, stream: Any | None = None) Response¶
Stuurt een HTTP-request naar
urlen retourneert eenrequests.Response.method— HTTP-methode als eenstr(bijv."GET","POST").url— Doel-URL. Moet beginnen methttp://ofhttps://.data— Ruwe request-body. Indien ingesteld wordtContent-Lengthautomatisch toegevoegd.json— Object dat naar JSON wordt geserialiseerd en als body wordt verzonden. SteltContent-Type: application/jsonin.files— Dict die een veldnaam toewijst aan een(filename, fileobj)tuple. Verzonden alsmultipart/form-data.headers— Dict met aanvullende request-headers.auth—(username, password)tuple voor HTTP Basic-authenticatie.stream— Geaccepteerd voor API-compatibiliteit; niet gebruikt.
- requests.head(url: str, **kw: Any) Response¶
Stuurt een HTTP
HEADrequest en retourneert eenResponse.HEADis identiek aanGETbehalve dat de server alleen met de statusregel en headers antwoordt; de body is leeg. Gebruik het om te controleren of een bron bestaat, omContent-Length/Content-Typete inspecteren zonder de payload te downloaden, of om een URL te peilen voordat je een zwaardereGETuitvoert.Argumenten:
url– doel-URL; moet beginnen methttp://ofhttps://.headers(kwarg) – dict met aanvullende request-headers.auth(kwarg) –(username, password)tuple voor HTTP Basic-authenticatie.
data/json/files/streamvanrequest()worden voor de volledigheid geaccepteerd, maar zijn zelden zinvol voorHEAD.
- requests.get(url: str, **kw: Any) Response¶
Stuurt een HTTP
GETrequest en retourneert eenResponse.GETis het standaardwerkwoord voor het ophalen van een representatie van de bron die doorurlwordt geïdentificeerd. Het is veilig (veroorzaakt geen statuswijziging aan de serverzijde) en idempotent.Argumenten:
url– doel-URL; moet beginnen methttp://ofhttps://.headers(kwarg) – dict met aanvullende request-headers (bijvoorbeeldAuthorizationofAccept).auth(kwarg) –(username, password)tuple voor HTTP Basic-authenticatie.
Een request-body via
data/jsonis toegestaan door de onderliggenderequest(), maar wordt door de meeste servers genegeerd.
- requests.post(url: str, **kw: Any) Response¶
Stuurt een HTTP
POSTrequest en retourneert eenResponse.POSTverzendt gegevens naarurl, doorgaans om een nieuwe ondergeschikte bron aan te maken, een formulierinzending te activeren of een actie aan te roepen. Het is noch veilig noch idempotent: herhaalde aanroepen kunnen dubbele bronnen aanmaken.Argumenten:
url– doel-URL; moet beginnen methttp://ofhttps://.data(kwarg) – ruwe request-body (bytes-achtig). Verzendt automatisch eenContent-Lengthheader.json(kwarg) – object dat naar JSON wordt geserialiseerd en als body wordt verzonden. SteltContent-Type: application/jsonin.files(kwarg) – dict die een veldnaam toewijst aan(filename, fileobj). Verzonden alsmultipart/form-data.headers(kwarg) – dict met aanvullende request-headers.auth(kwarg) –(username, password)tuple voor HTTP Basic-authenticatie.
Geef ten hoogste één van
data/json/filesdoor.
- requests.put(url: str, **kw: Any) Response¶
Stuurt een HTTP
PUTrequest en retourneert eenResponse.PUTvervangt de bron opurldoor de meegeleverde representatie, en maakt deze aan als hij nog niet bestaat. Het is idempotent: het herhalen van een identiekePUTlevert dezelfde eindtoestand op.Argumenten:
url– doel-URL; moet beginnen methttp://ofhttps://.data(kwarg) – ruwe vervangingsbody (bytes-achtig).json(kwarg) – object dat naar JSON wordt geserialiseerd en als vervangingsbody wordt verzonden. SteltContent-Type: application/jsonin.headers(kwarg) – dict met aanvullende request-headers.auth(kwarg) –(username, password)tuple voor HTTP Basic-authenticatie.
Geef ofwel
dataofjsondoor om de nieuwe representatie te dragen.
- requests.patch(url: str, **kw: Any) Response¶
Stuurt een HTTP
PATCHrequest en retourneert eenResponse.PATCHpast een gedeeltelijke wijziging toe op de bron opurl– alleen de velden die in de request-body staan veranderen. In tegenstelling totPUThoeft het niet idempotent te zijn (hoewel veel API’s het wel zo maken).Argumenten:
url– doel-URL; moet beginnen methttp://ofhttps://.data(kwarg) – ruwe delta-body (bytes-achtig). Het formaat hangt af van de server (bijv. JSON Patch, JSON Merge Patch).json(kwarg) – delta-object dat naar JSON wordt geserialiseerd. SteltContent-Type: application/jsonin.headers(kwarg) – dict met aanvullende request-headers.auth(kwarg) –(username, password)tuple voor HTTP Basic-authenticatie.
- requests.delete(url: str, **kw: Any) Response¶
Stuurt een HTTP
DELETErequest en retourneert eenResponse.DELETEvraagt om verwijdering van de bron opurl. Het is idempotent: het verwijderen van een reeds verwijderde bron is geen fout (de server retourneert doorgaans een 404, maar de eindtoestand is hetzelfde).Argumenten:
url– doel-URL; moet beginnen methttp://ofhttps://.headers(kwarg) – dict met aanvullende request-headers.auth(kwarg) –(username, password)tuple voor HTTP Basic-authenticatie.
Een body via
data/jsonis toegestaan door de onderliggenderequest(), maar wordt zelden gebruikt metDELETE.