我有一个检查网址的功能:
BEGIN
错误var:意外EOF
在tcpdump中,我看到重定向和连接关闭:
func Checkurl(url string) {
client := &http.Client{}
req, err := http.NewRequest("GET", url, nil)
resp, err := client.Get(url)
我如何获得位置?
答案 0 :(得分:1)
使用Response.Location
功能。
newUrl, err := resp.Location()
类型Client
支持重定向。请参阅CheckRedirect
字段。这可能是处理重定向的更好工具,具体取决于您要实现的目标。
将client.Do
用于Request
对象方法
client := &http.Client{}
req, err := http.NewRequest("GET", url, nil)
// check error
resp, err := client.Do(req)
// check error
newURL, err := resp.Location()
// check error
默认客户端默认处理重定向,因此我会检查最终目标的响应。这很可能是你问题的根本原因。