Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Go中通过代理获取URL时出错_Url_Proxy_Go_Fetch - Fatal编程技术网

在Go中通过代理获取URL时出错

在Go中通过代理获取URL时出错,url,proxy,go,fetch,Url,Proxy,Go,Fetch,这是有关的。我使用以下简单代码通过代理获取URL: package main import ( "fmt" "io/ioutil" "net/http" "net/url" ) func main() { proxyUrl, err := url.Parse("87.236.233.92:8080") httpClient := &http.Client { Transport: &http.Transport { Proxy:

这是有关的。我使用以下简单代码通过代理获取URL:

package main

import (
    "fmt"
    "io/ioutil"
    "net/http"
    "net/url"
)

func main() {
    proxyUrl, err := url.Parse("87.236.233.92:8080")
    httpClient := &http.Client { Transport: &http.Transport { Proxy: http.ProxyURL(proxyUrl) } }
    response, err := httpClient.Get("http://stackoverflow.com")
    if err != nil {
        fmt.Println(err.Error())
    } else {
        body, _ := ioutil.ReadAll(response.Body)
        fmt.Println("OK: ", len(body))
    }
}
如果运行此代码,则会出现以下错误:

Get:http:连接到代理87.236.233.92:8080:GetServByName时出错:请求的名称有效,但未找到请求类型的数据


我知道代理地址是有效的,如果我通过代理通过其他方式获取URL,它就会工作。知道我为什么会犯这个错误吗

在中使用
http://
指定代理,它应该可以工作,例如

proxyUrl, err := url.Parse("http://87.236.233.92:8080")
if err != nil {
    fmt.Println("Bad proxy URL", err)
    return
}

太棒了,非常感谢,我开始认为这是go运行时的一些bug。