Von Server-Seite muss ich Anfrage ohne Antwort auf Client wie nginx's 444 beenden/abbrechen.Golang: Wie man eingehende HTTP-Anfrage ohne Antwort beendet/abbricht/annulliert?
Von Client-Seite sollte es aussehen wie Verbindung zurückgesetzt von Peer.
Von Server-Seite muss ich Anfrage ohne Antwort auf Client wie nginx's 444 beenden/abbrechen.Golang: Wie man eingehende HTTP-Anfrage ohne Antwort beendet/abbricht/annulliert?
Von Client-Seite sollte es aussehen wie Verbindung zurückgesetzt von Peer.
Ich habe ein paar Stunden damit verbracht, und nur zufällig http.Hijacker
finden, die den Zugang zu Netzverbindung von http.ResponseWriter
erhalten können:
h := func(w http.ResponseWriter, r *http.Request) {
if wr, ok := w.(http.Hijacker); ok {
conn, _, err := wr.Hijack()
if err != nil {
fmt.Fprint(w, err)
}
conn.Close()
}
}
Abschluss Verbindung in einigen Fällen sinnvoll sein, kann die CPU-Zeit und ausgehenden Datenverkehrs für das Speichern.