3

これは、この他の質問に関連しています。この単純なコードを使用して、プロキシを介して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://stackoverflow.com:http:プロキシ87.236.233.92:8080への接続エラー:GetServByName:要求された名前は有効ですが、要求されたタイプのデータが見つかりませんでした。

プロキシアドレスが有効であることを知っています。他の方法でプロキシを介してURLを取得すると、機能します。このエラーが発生する理由はありますか?

4

1 に答える 1

9

でプロキシを指定するhttp://と、動作するはずです。

proxyUrl, err := url.Parse("http://87.236.233.92:8080")
if err != nil {
    fmt.Println("Bad proxy URL", err)
    return
}
于 2013-02-03T11:00:08.813 に答える