【问题标题】:How can i extract failure condition in Twisted如何在 Twisted 中提取故障条件
【发布时间】:2010-11-17 11:22:56
【问题描述】:

在我的程序中,我有处理所有错误的方法。像这样的

def _processError(self, failure):
    ''' Process various errors '''
    if isinstance(failure, Failure):
        error = failure.trap(SASLAuthError, StanzaError)
        if error == SASLAuthError:
            self.notifyObservers(error = 'authorization')
        elif error == StanzaError:
            self.notifyObservers(error = 'subscription')

我需要实现有关故障(条件)的更具体信息。一种方法是调用 getErrorMessage 并解析一个字符串。但这不是很好,因为在 Twisted 中可能会更改错误格式。有人有什么想法吗?

【问题讨论】:

  • 不清楚你要什么。
  • 抱歉解释不好。我已经解决了这个问题。条件可以取failure.value.condition
  • 为您的问题找到了一个可行的代码here 但我不知道这是否真的是正确的方式。

标签: twisted


【解决方案1】:

在使用 twisted 编程时,您应该使用回调和 errback 链(借助 twisted.internet.defer 模块)来处理错误情况。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-10-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-07
    • 1970-01-01
    相关资源
    最近更新 更多