当前位置: 首页 > 知识库问答 >
问题:

python请求通用异常处理[重复]

慕宪
2023-03-14

在我的代码中,所有请求都有一个超时期。对于每个请求,我都必须处理超时异常。有没有办法在请求中附加全局超时异常处理程序?

try:
  request = requests.post(url=url1, data=data, headers=headers, timeout=Config.REQUEST_TIMEOUT)
except Timeout:
  raise ServiceUnavailable()

try:
  request = requests.post(url=url2, data=data, headers=headers, timeout=Config.REQUEST_TIMEOUT)
except Timeout:
  raise ServiceUnavailable()

和上面一样,我每次都要处理超时和引发服务不可用。我想要一些通用的东西,每当超时发生,它将引起服务不可用。

共有1个答案

甘学潞
2023-03-14

用不同的方法解决了这个问题。我使用的是flask,所以我为超时异常添加了一个错误处理程序

@app.errorhandler(requests.exceptions.Timeout)
def third_party_communication_handler(e):
    raise ServiceUnavailable()
 类似资料:
  • 从数据库中检索数据时出现通信问题 合同数据服务 DataDbContext IContractDataService DataApicController Program.cs 错误 处理请求时发生未经处理的异常。InvalidOperationException:无法解析ContractShorting类型的服务。果心接口。IContractDataService“试图激活ContractSho

  • 我正试图找出处理异常的最具Python风格的方法。假设我们有一个长方法,它可以完成多个注册汽车的任务 例如 检索汽车详细信息 计算税款 发送确认电子邮件 调用方法是否应该处理异常: 或者单个方法本身是否应该处理异常。如果在这个方法中有任何异常,我们只想记录下来(或者在这个例子中打印出来)并继续。 是一种方法比另一种方法更pythonic,还是归结为更具可读性?我更喜欢第二种方式,但我们似乎更频繁地

  • 问题内容: 在处理JSF ajax请求时引发异常时,如何处理异常并访问堆栈跟踪?现在,当JSF项目阶段设置为Development时,我仅在JavaScript警报中获得异常类名称和消息。更糟糕的是,当JSF项目阶段设置为Production时,没有任何视觉反馈,并且服务器日志不显示有关异常的任何信息。 如果相关,那么我在Netbeans中使用GlassFish。 问题答案: OmniFaces

  • 异常严重:Servlet。路径为[z2]的上下文中servlet[dispatcher]的service()引发异常[请求处理失败;嵌套异常为org.springframework.dao.DataIntegrityViolationException:not null属性引用null或瞬时值:com.spring.entity.Product.cd;嵌套异常为org.hibernate.Prop

  • Spring MVC 3.2开始引入了基于Servlet 3的异步请求处理。相比以前,控制器方法已经不一定需要返回一个值,而是可以返回一个java.util.concurrent.Callable的对象,并通过Spring MVC所管理的线程来产生返回值。与此同时,Servlet容器的主线程则可以退出并释放其资源了,同时也允许容器去处理其他的请求。通过一个TaskExecutor,Spring M

  • 当我尝试连接到Oracle数据库时,出现了以下问题。 有例外 此reportMapper.xml