Go 未找到DNSError的条件测试
我正在使用net软件包执行DNS查找,例如:Go 未找到DNSError的条件测试,go,Go,我正在使用net软件包执行DNS查找,例如: hostnames, err := net.LookupAddr("192.168.0.1") if err != nil { // Do something } 与其大胆地(愚蠢地?)假设任何错误都意味着相同的事情,我想检查IsNotFound bool的状态。任何人都可以提供一个惯用的示例,说明如何构造一个条件来检查错误是否为DNSError,如果是,IsNotFound bool是否为true/false 谢谢您可以通过将错误投射到D
hostnames, err := net.LookupAddr("192.168.0.1")
if err != nil {
// Do something
}
与其大胆地(愚蠢地?)假设任何错误都意味着相同的事情,我想检查IsNotFound bool的状态。任何人都可以提供一个惯用的示例,说明如何构造一个条件来检查错误是否为DNSError,如果是,IsNotFound bool是否为true/false
谢谢您可以通过将错误投射到DNSError来实现这一点
if err != nil {
if e, ok := err.(*net.DNSError); ok && e.IsNotFound {
// err is a NotFound DNSError
} else {
// ...
}
}