e 拯救Exce-6ren">
gpt4 book ai didi

ruby - 替代 "rescue Exception"

转载 作者:太空宇宙 更新时间:2023-11-03 17:24:14 28 4
gpt4 key购买 nike

我有时会遇到一些意外错误,例如超时错误、503 错误等。有些错误我什至不知道我可能会收到。我无法通过执行以下操作来解释所有这些问题:

rescue Timeout::Error => e

拯救Exception也是一个糟糕的主意。

我可以使用什么替代方案?我希望我的代码在出现错误时拯救所有这些人;如果没有错误,我需要避免它。我希望能够终止我的脚本但不跳过语法错误等。

最佳答案

你可以为StandardError rescue,或者简单的rescue,它们是一样的:

rescue StandardError => e
# or
rescue => e

您可以在下表中看到哪些异常是从 StandardError 中拯救出来的 - 请注意它们是 Exception 的子集,并且假设应该是错误捕获。

当然,您可以在错误的地方定义异常的 gem,但这不应该发生在开发良好的 gem 中。

ruby exceptions
(来源:rubylearning.com)

我个人喜欢只挽救我知道如何处理的异常,除非它是添加一个日志/回溯系统以便稍后查询错误。如果是这种情况,我通常会挽救 StandardError

关于ruby - 替代 "rescue Exception",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18596785/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com