Estoy raspando un sitio con HttpWebRequest, pero el sitio está devolviendo un error. La página funciona bien cuando la presiono desde mi navegador. Me gustaría compararlos para ver qué puede estar causando el error. Sé cómo interceptar la solicitud desde mi navegador para inspeccionar los encabezados, pero ¿cómo veo los datos enviados por HttpWebRequest?Cómo ver los encabezados enviados por HttpWebRequest
Respuesta
Para comparar lo que se hace en el código y lo que hace el navegador, estoy seguro de que una herramienta de depuración HTTP como Fiddler, sería la solución más fácil.
Fiddler actúa como un proxy entre el cliente y el servidor, y muestra toda la información enviada a través del protocolo HTTP.
Es posible que deba configurar su aplicación .NET para usar el proxy que Fiddler proporciona. This blog post proporciona detalles sobre el tema.
http://www.fiddler2.com/fiddler2/ es una gran herramienta para tales cosas.
No sé si hay una solución general. Pero si estás usando Firefox, cualquiera de los dos complementos te ayudará: Firebug o LiveHTTPHeaders.
El panel de red de Firebug mostrará todas las solicitudes, incluidos los encabezados.
EDIT: Viste que ya sabías cómo hacerlo en un navegador tan pronto como lo publicaba. Pruebe la propiedad Encabezados:
HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://www.stackoverflow.com");
request.Method = "GET";
HttpWebResponse response = (HttpWebResponse) request.GetResponse();
Console.WriteLine(response.Headers);
Sé cómo ver la solicitud desde mi navegador. Quiero saber cómo ver qué está haciendo .NET con HttpWebRequest. –
Quiero ver los encabezados de solicitud, no los encabezados de respuesta. Cuando compruebo request.Header, están vacíos. Supongo que la colección de encabezados se usa solo para especificar encabezados, no para inspeccionar lo que va a usar. –
Actualizado con la respuesta en C#. HttpWebRequest y HttpWebResponse tienen la propiedad Headers que te dará lo que estás buscando. –
Puede obtener los encabezados de una HTTPWebRequest a través de la propiedad Encabezados. De MSDN: http://msdn.microsoft.com/en-us/library/system.net.httpwebrequest.headers.aspx
Sí, pero vea los comentarios en la respuesta de Chris Doggett arriba. Los encabezados no se completan hasta que se envía la solicitud. –
- 1. obtener encabezados ENVIADOS en XMLHttpRequest
- 2. datos enviados a través de httpwebrequest
- 3. Agregue encabezados personalizados utilizando HttpWebRequest
- 4. Herramienta para ver los encabezados de respuesta
- 5. No se puede modificar la información del encabezado: los encabezados ya enviados por ... Wordpress Problema
- 6. ¿Cómo probar los encabezados esperados?
- 7. ¿Cómo funcionan realmente los eventos enviados por el servidor?
- 8. window.open con los encabezados
- 9. ¿Cómo puedo ver los encabezados de solicitud realizados por curl al enviar una solicitud al servidor?
- 10. ¿Dónde se almacenan los datos enviados por UDP?
- 11. WCF: ¿inspeccionar los mensajes enviados/recibidos?
- 12. Eventos enviados por el servidor en Node.JS
- 13. Cómo comprimir un HttpWebRequest POST
- 14. cómo usar cookies con HttpWebRequest
- 15. Eventos enviados por el servidor frente a sondeo
- 16. Visualización de encabezados de página en Firebug
- 17. Cómo registrar mensajes SOAP enviados por Metro stack
- 18. Agregar encabezado personalizado en HttpWebRequest
- 19. ¿Cómo ver los comandos de Mercurial emitidos por Tortoise HG?
- 20. ¿Cómo controlar cada uno de los estados de SMS enviados?
- 21. ¿Cómo puedo usar TCPDump en Unix para ver los mensajes enviados a una dirección de multidifusión específica?
- 22. ¿Cómo evitar que Gmail marque los correos enviados por mi aplicación web como correo no deseado?
- 23. Ver encabezados de solicitud de cURL con datos de POST
- 24. ¿Por qué los correos electrónicos enviados por .NET SmtpClient faltan Message-Id?
- 25. Problema al enviar un correo electrónico con Codeigniter - Encabezados enviados en el cuerpo del mensaje
- 26. Caso de uso para el búfer de salida como la solución correcta para "encabezados ya enviados"
- 27. ¿Cómo obtengo los encabezados de un error de servidor 401?
- 28. Rack :: Solicitud: ¿cómo obtengo todos los encabezados?
- 29. ¿Cómo configuro los encabezados json correctos?
- 30. git: cómo ver los cambios debido al empuje?
Sé cómo ver la solicitud desde mi navegador. Quiero saber cómo ver qué está haciendo .NET con HttpWebRequest. –