In Situationen, in denen Sie die Verwendung Ihrer primären IP-Adresse für HTTP-Anfragen lieber vermeiden möchten, bietet Go eine Möglichkeit, die Quelladresse anzugeben.
Um dies zu erreichen, können Sie im Transport des Kunden einen benutzerdefinierten Dialer erstellen. Dies wird wie folgt erreicht:
// Create a transport based on http.DefaultTransport, but with a custom localAddr transport := &http.Transport{ Proxy: http.ProxyFromEnvironment, DialContext: (&net.Dialer{ Timeout: 30 * time.Second, KeepAlive: 30 * time.Second, LocalAddr: localAddr, // Set the desired local IP address here DualStack: true, }).DialContext, MaxIdleConns: 100, IdleConnTimeout: 90 * time.Second, TLSHandshakeTimeout: 10 * time.Second, ExpectContinueTimeout: 1 * time.Second, } // Create an HTTP client using the custom transport client := &http.Client{ Transport: transport, }
Durch Festlegen des LocalAddr-Felds des Dialers können Sie die Quell-IP-Adresse angeben, die für HTTP-Anfragen des Clients verwendet werden soll.
Das obige ist der detaillierte Inhalt vonWie kann ich die Quell-IP-Adresse für HTTP-Anfragen in Go anpassen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!