Proxy für HTTP-Client einrichten
Ich versuche, setup-der HTTP-client, so dass es ein proxy verwendet wird, allerdings kann ich nicht ganz verstehen, wie es zu tun. Die Dokumentation hat mehrere Verweis auf "proxy", aber keine der Funktionen zu erlauben scheinen, um zu definieren, den proxy. Was ich brauche ist so etwas wie dieses:
client := &http.Client{}
client.SetProxy("someip:someport") //pseudo code
resp, err := client.Get("http://example.com") //do request through proxy
Irgendeine Idee, wie dies zu tun Gehen?
InformationsquelleAutor der Frage this.lau_ | 2013-02-02
Du musst angemeldet sein, um einen Kommentar abzugeben.
lukad ist richtig, Sie können die
HTTP_PROXY
Umgebungsvariable, wenn Sie dies tun, Gehen Sie verwenden es standardmäßig.Bash:
Gehen:
Könnten Sie auch erstellen Sie Ihre eigenen http.Clients MÜSSEN einen proxy verwenden, unabhängig von der Umgebung-Konfiguration:
Dies ist nützlich, wenn Sie nicht von der Umgebung abhängig sind von der Konfiguration, oder nicht wollen, um es zu ändern.
Könnten Sie auch ändern Sie die Standard-transport verwendet, die von der "
net/http
" - Paket. Dies würde Auswirkungen auf das gesamte Programm (einschließlich der Standard-HTTP-client).InformationsquelleAutor der Antwort voidlogic
Gehen verwenden wird, die den definierten proxy in den Umgebungsvariablen
HTTP_PROXY
wenn er gesetzt ist. Sonst wird es verwenden keinen proxy.Könnte man es so machen:
InformationsquelleAutor der Antwort lukad
Kann Sie könnten auch versuchen, diese:
InformationsquelleAutor der Antwort HeyJoy
Für einen alternativen Weg, Sie können auch GoRequest das eine Funktion hat, können Sie einen proxy-leicht für jede einzelne Anfrage.
Oder Sie können festlegen, für die ganze auf einmal.
InformationsquelleAutor der Antwort A-letubby