Ich versuche, eine Anfrage zu tun, die eine komprimierte Antwort akzeptiertIst .NET HttpWebResponse dekomprimiert automatisch GZiped und Deflated Antworten?
var request = (HttpWebRequest)HttpWebRequest.Create(requestUri);
request.Headers.Add(HttpRequestHeader.AcceptEncoding, "gzip,deflate");
Ich frage mich, ob, wenn ich die zweite Zeile hinzufügen, werde ich die Dekompression manuell handhaben müssen.
ich Rick Strahl erraten muss falsch sein. Hast du es selbst ausprobiert? – Keltex
danke - nur versuchen, die Dinge zu verstehen, können Sie mir sagen, ob das korrekt ist? (a) wenn Sie diese "AcceptEncoding" -Zeile nicht hinzufügen, dann - wenn Sie eine nicht komprimierte Datei herunterladen => funktioniert FINE - wenn Sie eine komprimierte Datei herunterladen => ISSUE (wird die Datei herunterladen, aber wird als korrupt aussehen, als war nicht unkomprimiert) (b) wenn Sie diese "AcceptEncoding" Zeile dann hinzufügen: - wenn Sie eine nicht komprimierte Datei herunterladen => funktioniert immer noch FINE - wenn Sie eine komprimierte Datei herunterladen => funktioniert gut (wird unkomprimiert) Ist das richtig? – Greg
@Greg Keine der Optionen. In der zweiten Zeile geht es nicht um das Herunterladen von Dateien, die möglicherweise bereits komprimiert sind (z. B. ZIP-Dateien), sondern um das Herunterladen von Webressourcen, die bei Bedarf komprimiert werden können (z. B. HTML-Dateien). Wenn Sie die zweite Zeile nicht setzen, sendet Ihnen ein gut benannter Webserver überhaupt keine komprimierten Dateien. Wenn der Web-Server Dateien komprimieren kann, wird es nur funktionieren, wenn Sie die zweite Zeile setzen. –