如何在 Golang 中为 http.Get() 请求设置超时?
技术问答
635 人阅读
|
0 人回复
|
2023-09-12
|
我正在用 Go 做一个 URL 获取器,还有一个要获得的 URL 列表http.Get()每个 URL发送请求并获得其响应。
7 C! G d0 l) `9 ^resp,fetch_err := http.Get(url)
: V4 K# d: ?8 W$ ~5 N6 c+ y8 @ 如何做每一个 Get 请求设置自定义超时?(默认时间很长,这让我的 fetcher 很慢。)我希望我的 fetcher 有大约 40-45 秒超时后,应返回请求超时并转移到下一个 URL。/ ^" h; M' b& K F. b
我怎样才能做到这一点?
+ I3 \9 K/ B* O$ k ! O& m- U! F1 `# U! Q" a
解决方案: 8 g J/ o! F) F8 S2 }
显然在 Go 1.3 http.Client有 Timeout 字段
* O. s8 ~! x) Q$ _/ @6 Mclient := http.Client{ Timeout: 5 * time.Second,}client.Get(url)$ e1 j$ ]% w' _) F6 ~% L
这对我来说是成功的。 |
|
|
|
|
|