Go の http クライアントを使用して Github から zip または tar.gz ファイルをダウンロードしようとすると、 「このサイトへのアクセスは制限されています。」というエラー メッセージが表示される場合があります。 Go クライアントでエラーが発生しても、curl は問題なく動作する可能性があります。この問題は、us-west-2 リージョンの Ubuntu Server 16.04 LTS を実行している EC2 インスタンスで発生することが報告されています。
次の構成の詳細が提供されています:
問題を再現するサンプル コード スニペットを次に示します。
<code class="go">package main import ( "fmt" "io/ioutil" "net/http" ) func main() { endpoint := "https://github.com/kubeflow/manifests/archive/v1.0.2.tar.gz" // Get the data resp, err := http.Get(endpoint) if err != nil { fmt.Printf("[error] %v", err) return } defer resp.Body.Close() respData, err := ioutil.ReadAll(resp.Body) if err != nil { fmt.Printf("[error] %v", err) return } // Returns a 403 and html error page fmt.Printf("Resp:\n%v\n", string(respData)) }</code>
コードがローカル マシンで正常に実行されることは注目に値します。これは、問題が AWS インスタンスに固有のものであることを示唆しています。
解決策:
同様の問題が発生し、「このサイトへのアクセスは制限されています」というエラー メッセージが表示されました。解決策には、IDE (IntelliJ IDEA) と git バージョンの更新が含まれていました。このプロセスは、IntelliJ IDEA 内で直接完了できます。
以上がCurl が動作するときに、Go Http クライアントで Github 上で「このサイトへのアクセスは制限されています」というエラーが発生するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。