我有一个使用POST请求命中的远程API。我有两个脚本来完成这项工作。一个有效;另一个我需要调试。
使用requests
包的工作原理更复杂,在Python中使用:
import requests
from requests.auth import HTTPBasicAuth
r = requests.post("http://thing.com/",
data = {"param1": "foo"},
auth = HTTPBasicAuth("user@domain.com", "password"))
这很有效。另一个脚本,即CLI,在理论上确实是一个相同的怪物并且不起作用。 CLI脚本打印出它尝试使用的URL。我希望得到有用的Python脚本来告诉我它正在尝试使用的地址URL。如何让requests
告诉我它正在使用的完全格式化的网址?
答案 0 :(得分:0)
您可以添加以下内容以打印有关所有请求的调试信息:
import logging
logging.basicConfig(level=logging.DEBUG)
您将获得类似
的输出INFO:requests.packages.urllib3.connectionpool:Starting new HTTPS connection (1): <URL>
DEBUG:requests.packages.urllib3.connectionpool:"POST /oauth/token HTTP/1.1" 200 None
如果您想打印其他信息,可以打印出您传入的对象或执行某些请求event hooks。