Maison > développement back-end > Tutoriel Python > Comment puis-je inspecter les requêtes HTTP dans les applications Python à l'aide de la bibliothèque de requêtes ?

Comment puis-je inspecter les requêtes HTTP dans les applications Python à l'aide de la bibliothèque de requêtes ?

Linda Hamilton
Libérer: 2024-11-19 20:29:02
original
725 Les gens l'ont consulté

How Can I Inspect HTTP Requests in Python Applications Using the Requests Library?

Inspection des requêtes HTTP dans les applications Python

Lors du dépannage des erreurs d'API, telles que celles rencontrées lors de l'appel de l'API de PayPal, il devient crucial d'inspecter le l'intégralité de la requête HTTP envoyée par l'application. Ces informations sont souvent requises par les équipes d'assistance pour identifier la cause du problème.

Exploiter la journalisation pour l'inspection des demandes

Versions modernes de la bibliothèque de demandes (1.x et ci-dessus) offrent une méthode simple pour afficher les requêtes HTTP : activer la journalisation. Les requêtes utilisent la configuration http.client et du module de journalisation pour contrôler la verbosité de la journalisation.

Démonstration :

import requests
import logging

# Enable debugging at HTTP level
http_client.HTTPConnection.debuglevel = 1

# Initialize logging
logging.basicConfig()
logging.getLogger().setLevel(logging.DEBUG)
requests_log = logging.getLogger("requests.packages.urllib3")
requests_log.setLevel(logging.DEBUG)
requests_log.propagate = True

requests.get('https://httpbin.org/headers')
Copier après la connexion

Exemple de sortie :

INFO:requests.packages.urllib3.connectionpool:Starting new HTTPS connection (1): httpbin.org
send: 'GET /headers HTTP/1.1\r\nHost: httpbin.org\r\nAccept-Encoding: gzip, deflate, compress\r\nAccept: */*\r\nUser-Agent: python-requests/1.2.0 CPython/2.7.3 Linux/3.2.0-48-generic\r\n\r\n'
reply: 'HTTP/1.1 200 OK\r\n'
header: Content-Type: application/json
header: Date: Sat, 29 Jun 2013 11:19:34 GMT
header: Server: gunicorn/0.17.4
header: Content-Length: 226
header: Connection: keep-alive
DEBUG:requests.packages.urllib3.connectionpool:"GET /headers HTTP/1.1" 200 226
Copier après la connexion

Cette sortie fournit des informations détaillées sur la requête HTTP, y compris les en-têtes et la première partie de la réponse. Le corps complet de la réponse n’est pas enregistré. Ainsi, l'activation de la connexion aux requêtes offre un moyen simple d'inspecter les requêtes HTTP et d'aider au débogage des problèmes d'API.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal