微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

有没有办法使响应显示为request.exceptions.HTTPError traceback的一部分?

如何解决有没有办法使响应显示为request.exceptions.HTTPError traceback的一部分?

我有一个如下所示的辅助函数

import requests

def _request_successful(response: requests.Response) -> True:
    """Raise a HTTPError if the response indicates an unsuccessful 
    request. Return True if it was successful.
    """
    response.raise_for_status()
    return True

我这样使用它:

response = requests.get(...)

if _request_successful(response):
    ...

我正在使用的API具有非常详细的响应,因此,只要发生HTTPError,我都希望响应显示为回溯的一部分。我知道这也是一种选择:

try:
    ...
except requests.exceptions.HTTPError as error:
    print(error.response.text)

但是我不想这样抢response.text。而是可以将response.text显示为HTTPError追溯的一部分,还是我需要创建自己的Exception?

也许是这样的:

Traceback (most recent call last):
...
requests.exceptions.HTTPError: ...
response: {...}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。