¿Hay alguna manera rápida de descomprimir la respuesta de gzip descargada con el método WebClient.DownloadString()? ¿Tiene alguna sugerencia sobre cómo manejar las respuestas de gzip con WebClient?Descomprimir la respuesta de gzip de WebClient
37
A
Respuesta
72
La manera más fácil de hacerlo es utilizar el built in automatic decompression con la clase HttpWebRequest
.
var request = (HttpWebRequest)HttpWebRequest.Create("http://stackoverflow.com");
request.Headers.Add(HttpRequestHeader.AcceptEncoding, "gzip,deflate");
request.AutomaticDecompression = DecompressionMethods.GZip | DecompressionMethods.Deflate;
Para hacer esto con un WebClient
usted tiene que hacer su propia clase derivada de WebClient
y reemplazar el método GetWebRequest()
.
public class GZipWebClient : WebClient
{
protected override WebRequest GetWebRequest(Uri address)
{
HttpWebRequest request = (HttpWebRequest)base.GetWebRequest(address);
request.AutomaticDecompression = DecompressionMethods.GZip | DecompressionMethods.Deflate;
return request;
}
}
también ver este hilo SO: Does .NET's HttpWebResponse uncompress automatically GZiped and Deflated responses?
Cuestiones relacionadas
- 1. Descomprimir la respuesta http comprimida gzip
- 2. Descomprimir cadena GZip en Java
- 3. Descomprimir GZip en Haskell
- 4. Descomprimir la respuesta GZIPed HTTP en Java
- 5. Descomprimir la respuesta HTTP de GZIP (usando la aplicación api de cliente de jersey, java)
- 6. ¿Cuál es la mejor manera de descomprimir una respuesta de servidor gzip en Python 3?
- 7. impulsar gzip descomprimir byte array
- 8. Cómo descomprimir GZip en Stream (C#)?
- 9. Respuesta de GZip en IIS Express
- 10. compresión gzip de la respuesta de codificación fragmentada?
- 11. ¿Cómo abrir archivos de texto gzip en Gvim sin descomprimir?
- 12. ¿Cómo descomprimir el hilo de Gzip en rubí?
- 13. ¿Cómo leer una respuesta de WebClient después de publicar datos?
- 14. ¿Cómo puedo extraer o descomprimir archivos gzip usando php?
- 15. Descodificación de cuerpos de respuesta gzip-ed con url-retrieve
- 16. NSURLConnection: la respuesta SOAP codificada gzip se corrompe
- 17. JavaScript: Descomprimir/inflar/descomprimir/descomprimir cadenas
- 18. Silverlight: ¿Cómo pasar datos de la solicitud a la respuesta usando el modo asíncrono Webclient?
- 19. ¿Vale la pena que gzip js archivos?
- 20. ¿Puede VIM descomprimir archivos gzip automáticamente con una extensión de archivo diferente?
- 21. GZip en android
- 22. Cómo descomprimir/descomprimir dentro de Emacs
- 23. Cómo descomprimir una solicitud de NSURLConnection?
- 24. descompresión GZIP C# OutOfMemory
- 25. Descomprimir el archivo BZIP2
- 26. ¿Cómo puedo leer la respuesta GZIP-ed de Stackoverflow API en PHP?
- 27. Sobrecarga de construcción WebClient
- 28. HEAD con WebClient?
- 29. SignalR wth compresión gzip
- 30. AppEngine compresión gzip
no es necesario especificar la cabecera acceptencoding para la clase derivada webclient? – user3791372