2011-10-01 17 views
13

me deubgging algunas peticiones http y descubierto que puedo agarrar las cabeceras de solicitud en este tipo de formato:¿Cómo duplicar una solicitud usando wget (o curl) con encabezados sin procesar?

GET /download?123456:75b3c682a7c4db4cea19641b33bec446/document.docx HTTP/1.1 
Host: www.site.com 
User-Agent: Mozilla/5.0 Gecko/2010 Firefox/5 
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 
Accept-Language: en-us,en;q=0.5 
Accept-Encoding: gzip, deflate 
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7 
Referer: http://www.site.com/dc/517870b8cc7 
Cookie: lang=us; reg=1787081http%3A%2F%2Fwww.site.com%2Fdc%2F517870b8cc7 

¿Es posible o hay una manera fácil de reconstruir esa petición usando wget o curl (u otra CLI herramienta?)

Al leer la página del manual wget, sé que puedo configurar varias de estas cosas individualmente, pero ¿hay una manera más fácil de enviar una solicitud con todas estas variables desde la línea de comandos?

Respuesta

16

Sí, sólo tiene que combinar todos los encabezados usando --header

wget --header="User-Agent: Mozilla/5.0 Gecko/2010 Firefox/5" \ 
--header="Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8" \ 
--header="Accept-Language: en-us,en;q=0.5" \ 
--header="Accept-Encoding: gzip, deflate" 
--header="Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7" \ 
--header="Cookie: lang=us; reg=1787081http%3A%2F%2Fwww.site.com%2Fdc%2F517870b8cc7" \ 
--referer=http://www.site.com/dc/517870b8cc7 
http://www.site.com/download?123456:75b3c682a7c4db4cea19641b33bec446/document.docx 

Si usted está tratando de hacer un poco de descarga ilegal,
podría fallar,
es depende de cómo de alojamiento URL que se está programando

+0

Funcionó muy bien. ¿Es esto posible también usar CURL? – cwd

4

Aquí es curl versión:

curl http://www.example.com/download?123456:75b3c682a7c4db4cea19641b33bec446/document.docx \ 
-H "User-Agent: Mozilla/5.0 Gecko/2010 Firefox/5" \ 
-H "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8" \ 
-H "Accept-Language: en-us,en;q=0.5" \ 
-H "Accept-Encoding: gzip, deflate" 
-H "Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7" \ 
-H "Cookie: lang=us; reg=1787081http%3A%2F%2Fwww.site.com%2Fdc%2F517870b8cc7" \ 
-H "Referer: http://www.example.com/dc/517870b8cc7" 

En las herramientas de desarrollador de Chrome, puede usar Copiar como cURL para capturar la solicitud como curl.

+0

¿Hay alguna forma de especificar el orden de los encabezados? (importante para algunos casos de uso extraños) –

Cuestiones relacionadas