出于学习目的,我正在使用 golang 构建命令行工具,此 cli使用以下 api从GameDeals subreddit获取前十名帖子:
https://www.reddit.com/r/gamedeals/hot.json?limit=10
当我发送请求时,我收到了503 Service Unavailable和一些 HTML 作为响应:
<img src=//s3.amazonaws.com/redditstatic/heavy-load.png alt="">
<h2>Our CDN was unable to reach our servers</h2>
Please check <a href="http://www.redditstatus.com/">www.redditstatus.com</a> if you consistently get this error.
我不明白为什么如果我从浏览器发出请求,我得到的是预期的 json,而不是来自我的 cli 的 503 错误。
这是我执行请求的代码:
address := fmt.Sprintf("%s/hot.json?limit=%d", redditBaseURL, 10)
req, err := http.NewRequest("get", address, nil)
if err != nil {
return err
}
req.Header.Set("User-Agent", userAgent)
res, err := client.Do(req)
if err != nil {
return err
}
defer res.Body.Close()
result, err := ioutil.ReadAll(res.Body)
if err != nil {
return err
}
fmt.Println(string(result))
我错过了什么吗?
白猪掌柜的
相关分类