1

我有一个用 POST 请求命中的远程 API。我有两个脚本可以完成这项工作。一个作品;另一个我需要调试。

使用以下包的工作更复杂,并且在 Python 中requests

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告诉我它使用的完全格式化的 URL?

4

1 回答 1

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

如果你想打印其他信息,你可以打印出你传入的对象或者实现一些请求事件钩子

于 2013-09-13T12:41:45.940 回答