首页 > 解决方案 > 如何在python中将超时和重试与基于上下文的会话请求结合起来

问题描述

在我当前的实现中,应用程序有一个全局会话,用于所有应用超时和重试设置的请求。

现在我想让这些请求基于上下文。但我对如何实现超时和重试设置感到困惑。我是否必须为每个请求重复它,还是可以以更明确的方式完成?

当前场景:

s = requests.Session()
r = Retry(total=5, backoff_factor=0.2, status_forcelist=[500, 501, 502, 503, 504])
s.mount("https://", HTTPAdapter(max_retries=r))
s.mount("http://", HTTPAdapter(max_retries=r))

s.get('https://httpbin.org/get')

未来实施:

with requests.Session() as s:
    s.get('https://httpbin.org/get')

如何以最佳方式为多次调用定义超时和重试?

提前致谢。

标签: pythonapisessionrequestpython-requests

解决方案


推荐阅读