Heim >Backend-Entwicklung >Golang >Warum erhält mein Go-HTTP-Client auf Github die Fehlermeldung „Ihr Zugriff auf diese Website wurde eingeschränkt', wenn Curl funktioniert?

Warum erhält mein Go-HTTP-Client auf Github die Fehlermeldung „Ihr Zugriff auf diese Website wurde eingeschränkt', wenn Curl funktioniert?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-10-29 14:49:02723Durchsuche

Why Does My Go Http Client Get

„Github Ihr Zugriff auf diese Website wurde eingeschränkt“ mit dem Go-HTTP-Client

Wenn Sie versuchen, ZIP- oder TAR.GZ-Dateien von Github mit dem HTTP-Client von Go herunterzuladen, Möglicherweise erhalten Sie die Fehlermeldung „Ihr Zugriff auf diese Website wurde eingeschränkt.“ Trotz des beim Go-Client auftretenden Fehlers funktioniert Curl möglicherweise problemlos. Es wurde berichtet, dass dieses Problem auf EC2-Instanzen auftritt, auf denen Ubuntu Server 16.04 LTS in der Region us-west-2 ausgeführt wird.

Die folgenden Konfigurationsdetails wurden bereitgestellt:

  • Go-Version: 1.15.linux-amd64 (14 wurde ebenfalls ausprobiert)
  • AWS: Ubuntu Server 16.04 LTS (HVM), SSD-Volume-Typ – ami-0807918df10edc141 (64-Bit x86) / ami-0c75fb2e6a6be38f6 (64-Bit Arm)
  • Endpunkt: https://github.com/kubeflow/manifests/archive/v1.0.2.tar.gz

Hier ist ein Beispielcode-Snippet, das das Problem reproduziert:

<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>

Es ist erwähnenswert, dass der Code erfolgreich auf lokalen Computern ausgeführt wird, was darauf hindeutet, dass das Problem spezifisch für die AWS-Instanz ist.

Lösung:

Ein ähnliches Problem trat mit der Fehlermeldung „Der Zugriff auf diese Website wurde eingeschränkt“ auf. Die Lösung bestand darin, die IDE (IntelliJ IDEA) und die Git-Version zu aktualisieren. Dieser Vorgang kann direkt in IntelliJ IDEA abgeschlossen werden.

Das obige ist der detaillierte Inhalt vonWarum erhält mein Go-HTTP-Client auf Github die Fehlermeldung „Ihr Zugriff auf diese Website wurde eingeschränkt', wenn Curl funktioniert?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn