gpt4 book ai didi

go - 从net/http包中的* urlError访问Timeout()方法

转载 作者:行者123 更新时间:2023-12-01 22:39:22 26 4
gpt4 key购买 nike

我使用Client.Get(url)函数访问网页。

timeout := time.Duration(wgetTimeout) * time.Second
client := http.Client{Timeout: timeout}

// Get page and check for error (timeout, http ...)
res, err := client.Get(url)
if err != nil {
return "", err
}
defer res.Body.Close()
Client.Get() function doc说:

返回的任何错误均为* url.Error类型。如果请求超时,则url.Error值的Timeout方法将报告true。

如何访问类似bool Timeout()的url.Error方法?
here发布的解决方案要求使用Client.Do()函数。

最佳答案

GoDoc: Type *url.Error

if e, ok := err.(*url.Error); ok && e.Timeout() {
log.Fatal("timeout is: ", e.Timeout())
} else if err != nil {
panic(err)
}

关于go - 从net/http包中的* urlError访问Timeout()方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62496603/

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