Maison >développement back-end >Tutoriel Python >Comment capturer la requête HTTP complète en Python pour le débogage avec les erreurs de l'API PayPal ?

Comment capturer la requête HTTP complète en Python pour le débogage avec les erreurs de l'API PayPal ?

Susan Sarandon
Susan Sarandonoriginal
2024-11-17 18:47:021053parcourir

How to Capture the Complete HTTP Request in Python for Debugging with PayPal API Errors?

Accès à la requête HTTP complète à partir d'une application Python

Avec l'équipe d'assistance de PayPal demandant la requête HTTP complète, y compris les en-têtes, pour dépanner une API erreur, les développeurs utilisant la bibliothèque de requêtes de Python peuvent avoir besoin de capturer ces données pour analyse.

Solution : activer le débogage dans les requêtes

Versions modernes de la bibliothèque de requêtes (1 .x et versions ultérieures) fournissent un moyen pratique d’activer le débogage et de récupérer les informations nécessaires. Voici comment procéder :

Démonstration de code

import requests
import logging

# Enable debugging at the httplib 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')

Exemple de sortie

La sortie inclut la demande et la réponse détails avec les informations suivantes :

  • Demande : 'GET /headers HTTP/1.1rnHost : httpbin.orgrnAccept-Encoding : gzip, deflate, compressrnAccept : /rnUser-Agent : python -requests/1.2.0 CPython/2.7.3 Linux/3.2.0-48-genericrnrn'
  • Réponse : 'HTTP/1.1 200 OKrnContent-Type : application/jsonrnDate : samedi 29 juin 2013 11:19 :34 GMTrnServer : gunicorn/0.17.4rnContent-Length : 226rnConnection : keep-alive'

Remarque : Le corps complet de la réponse n'est pas enregistré pour éviter les risques de sécurité potentiels (par exemple, exposant des données sensibles).

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!

Déclaration:
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