Go Sprache http Verbindung Hijacking.Go Hijack Client-Verbindung
Ich weiß, wie man auf der Serverseite hijack. http://golang.org/pkg/net/http/#example_Hijacker
Aber gibt es Weg, es auf Kundenseite zu entführen?
Go Sprache http Verbindung Hijacking.Go Hijack Client-Verbindung
Ich weiß, wie man auf der Serverseite hijack. http://golang.org/pkg/net/http/#example_Hijacker
Aber gibt es Weg, es auf Kundenseite zu entführen?
Nein, Sie können dies nicht mit dem Standard-http.Client
, aber net/http/httputil
hat eine ClientConn
, die ein niedriges Niveau http Client, der direkt ein net.Conn
wickelt. Es ist Hijack-fähig und arbeitet auf Standard http.Request
.
http://golang.org/pkg/net/http/httputil/#ClientConn
Auch, weil Sie beide Seiten kontrollieren, und Sie sollten nichts zu unerwarteten sehen, kann es einfacher sein, die Anforderung zu schreiben einfach, sich die TCP-Verbindung direkt (oder Request.Write()
verwenden, wenn Sie wollen Erstellen Sie die Anfrage auf diese Weise)
Ich habe 'ClientConn' noch nicht getestet. Aber ich glaube, es ist die Antwort. Danke – Max
Nicht wirklich (Verbindungen sind im Transport zusammengefasst). Was müssen Sie eigentlich tun? – JimB
Ich habe go_client und go_server. Go_server ist ein Webserver. Ich möchte, dass der Client go_server mit einem Handler verbindet. und nach einer HTTP-Anfrage über rohen Socket mit ihm kommunizieren. Ich wünsche Client, HTTP-Verbindung zu entführen. Natürlich wenn es möglich ist. z.B. Eines der Dinge, die ich tun könnte, ist HTTP-Proxy CONNECT anstelle von GET. – Max