Wie man eine HTTPS-Anfrage in Go mit einem selbstsignierten oder ungültigen Zertifikat durchführt?
Hallo zusammen! Ich bin neu in Go und arbeite an einem Projekt, bei dem ich HTTPS-Anfragen an einen internen Entwicklungsserver senden muss. Das Problem ist, dass auf diesem Server ein selbstsigniertes SSL-Zertifikat verwendet wird und Go standardmäßig solche Verbindungen mit dem Fehler x509: certificate signed by unknown authority ablehnt.
Mein aktueller Code sieht so aus:
package main
import (
"fmt"
"io/ioutil"
"net/http"
)
func main() {
resp, err := http.Get("https://internal-dev.example.com/api/data")
if err != nil {
fmt.Println("Fehler:", err)
return
}
defer resp.Body.Close()
body, _ := ioutil.ReadAll(resp.Body)
fmt.Println(string(body))
}
Ich verstehe, dass dies für die Produktion eine schlechte Praxis ist, aber für die lokale Entwicklung muss ich vorübergehend die Zertifikatsprüfung ignorieren. Ich habe versucht, in der Dokumentation zu suchen, aber dort gibt es viele komplexe Strukturen wie http.Transport und tls.Config.