我试图让我的Go语言应用把自己指定为一个特定的UserAgent,但是找不到任何关于如何使用net/http来完成这个任务的信息。我正在创建一个http.Client,并使用它通过client.Get()来发出Get请求。是否有办法在客户端中设置UserAgent,或者根本没有办法?
UserAgent
net/http
http.Client
client.Get()
Get
qnakjoqk1#
创建请求时,请使用request.Header.Set("key", "value"):
request.Header.Set("key", "value")
package main import ( "io" "log" "net/http" ) func main() { client := &http.Client{} req, err := http.NewRequest("GET", "http://httpbin.org/user-agent", nil) if err != nil { log.Fatalln(err) } req.Header.Set("User-Agent", "Golang_Spider_Bot/3.0") resp, err := client.Do(req) if err != nil { log.Fatalln(err) } defer resp.Body.Close() body, err := io.ReadAll(resp.Body) if err != nil { log.Fatalln(err) } log.Println(string(body)) }
结果:
2012/11/07 15:05:47 { "user-agent": "Golang_Spider_Bot/3.0" }
p. s. http://httpbin.org对于测试这种东西来说太神奇了!
1条答案
按热度按时间qnakjoqk1#
创建请求时,请使用
request.Header.Set("key", "value")
:结果:
p. s. http://httpbin.org对于测试这种东西来说太神奇了!