【发布时间】:2016-03-13 20:29:24
【问题描述】:
我在这里遵循这个例子:
https://www.socketloop.com/tutorials/golang-smarter-error-handling-with-strings-contains-function
if !strings.Contains(err.Error(), "timed out") {
fmt.Printf("resulting error not a timeout: %s", err)
}
但是,如果我在我的代码中这样做,我会得到这个
err.Error undefined (type interface {} 是没有方法的接口)
我想知道我在这里做错了什么,以及我应该如何检查确切的错误(在我的情况下,我想从错误“切片边界超出范围”中恢复)
最好的,
【问题讨论】:
-
那个教程太可怕了。恐慌不是处理错误的典型方式,也不是将它们打印到标准输出并退出。通过错误字符串识别错误是最不受欢迎的识别方法。
标签: go