Eu imagino que isso poderia ser feito com o wget, mas eu sei como fazer isso com o curl. yum install curl
ou o que for para o seu SO, se você ainda não o tiver instalado:
curl -vv http://thewebsiteinquestion.com
A saída mostrará a resposta bruta do servidor, incluindo os cabeçalhos e o corpo, como você queria. Isso é puramente uma coisa de preferência, mas eu geralmente achei curl
mais fácil e intuitivo de usar para testes e desenvolvimento do que wget
.
Às vezes, também é útil usar telnet
e falar HTTP bruto. Como um sysadm / dev eu acho isso inestimável. Por exemplo:
$ telnet google.com 80
Trying 74.125.239.0...
Connected to google.com.
Escape character is '^]'.
GET / HTTP/1.0
Host: google.com
HTTP/1.0 301 Moved Permanently
Location: http://www.google.com/
Content-Type: text/html; charset=UTF-8
Date: Thu, 20 Sep 2012 22:31:32
... the rest ommitted
Tudo o que você precisa digitar manualmente é as linhas GET / HTTP/1.0
e Host: google.com
. Em seguida, pressione enter duas vezes. Dessa forma, você realmente verá a resposta completa do servidor HTTP remoto, sem nada atrapalhar. Enquanto você brinca com ele, aprende melhor como o HTTP funciona, e nunca se confundirá quando os redirecionamentos estão acontecendo (como você pode ver acima, via 301
status HTTP e Location
header), e sua ferramenta (navegador , wget, curl) está lidando com eles automaticamente para você.
Editar : como passar parâmetros GET usando telnet
. Basta adicioná-los ao caminho que você está obtendo quando fala HTTP:
$ telnet thewebsite.co.uk 80
Trying 95.131.67.221...
Connected to thewebsite.co.uk.
Escape character is '^]'.
GET /?foo=bar HTTP/1.0
Host: thewebsite.co.uk
HTTP/1.1 200 OK
Date: Fri, 21 Sep 2012 17:43:27 GMT
Server: Apache/2.0.63 (Unix) mod_ssl/2.0.63 OpenSSL/0.9.8e-fips-rhel5 mod_auth_passthrough/2.1 mod_bwlimited/1.4 FrontPage/5.0.2.2635
Last-Modified: Mon, 01 Jun 2009 20:10
...
Para fazer uma consulta POST, você precisa calcular o tamanho dos dados enviados e colocá-los em Content-Length
, e isso se parece com:
$ telnet www.yahoo.com 80
Trying 72.30.38.140...
Connected to ds-any-fp3-real.wa1.b.yahoo.com.
Escape character is '^]'.
POST / HTTP/1.0
User-Agent: telnet
Host: www.yahoo.com
Accept: */*
Content-Length: 8
Content-Type: application/x-www-form-urlencoded
p=foobar
HTTP/1.0 200 OK
Date: Fri, 21 Sep 2012 17:57:35 GMT
P3P: policyref="http://info.yahoo.com/w3c/p3p.xml", CP="CAO DSP COR CUR ADM DEV TAI PSA PSD IVAi IVDi CONi TELo OTPi OUR DELi SAMi OTRi UNRi PUBi IND PHY ONL UNI PUR FIN COM NAV INT DEM CNT STA POL HEA PRE LOC GOV"
Cache-Control: private
X-Frame-Options: SAMEORIGIN
...