GO语言代理用法

package mainimport (    "fmt"    "io/ioutil"    "net/http"    "net/url")//sock5代理func socksproxy() {    urli := url.URL{}    urlproxy, _ := urli.Parse("http://测试ip:端口")    client := &http.Client{        Transport: &http.Transport{            Proxy: http.ProxyURL(urlproxy),        },    }    rqt, err := http.NewRequest("GET", "http://myip.top", nil)    if err != nil {        println("接口获取IP失败!")        return    }    rqt.Header.Add("User-Agent", "Lingjiang")    //解决返回后果    response, _ := client.Do(rqt)    defer response.Body.Close()    body, err := ioutil.ReadAll(response.Body)    if err != nil {        return    }    fmt.Println("socks5:", string(body))    return}//http代理func httpproxy() {    urli := url.URL{}    urlproxy, _ := urli.Parse("http://测试ip:端口")    client := &http.Client{        Transport: &http.Transport{            Proxy: http.ProxyURL(urlproxy),        },    }    rqt, err := http.NewRequest("GET", "http://myip.top", nil)    if err != nil {        println("接口获取IP失败!")        return    }    rqt.Header.Add("User-Agent", "Lingjiang")    //解决返回后果    response, _ := client.Do(rqt)    defer response.Body.Close()    body, err := ioutil.ReadAll(response.Body)    if err != nil {        return    }    fmt.Println("http:", string(body))    return}//本机IPfunc httplocal() {    client := &http.Client{}    rqt, err := http.NewRequest("GET", "http://myip.top", nil)    if err != nil {        println("接口获取IP失败!")        return    }    rqt.Header.Add("User-Agent", "Lingjiang")    //解决返回后果    response, _ := client.Do(rqt)    defer response.Body.Close()    body, err := ioutil.ReadAll(response.Body)    if err != nil {        return    }    fmt.Println("本机:", string(body))    return}func main() {    httplocal()    httpproxy()    socksproxy()}