I'd like to pass a raw HTTP request like:

GET /foo/bar HTTP/1.1
Host: example.org
User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; fr; rv:1.9.2.8) Gecko/20100722 Firefox/3.6.8
Accept: */*
Accept-Language: fr,fr-fr;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
Connection: keep-alive
Content-Type: application/x-www-form-urlencoded
X-Requested-With: XMLHttpRequest
Referer: http://example.org/test
Cookie: foo=bar; lorem=ipsum;

to a HTTP client.

I tried cat raw.http | curl but without success.

Any suggestion?

Thx.

Solution

Raw data in, raw data out:

nc example.org 80 < raw.http

If you need to pipe the data through some program:

cat raw.http | someprogram | nc example.org 80

Manual page

Answered By — Lekensteyn

Answer Checked By — Cary Denson (FixIt Admin)

This Answer collected from stackoverflow, is licensed under cc by-sa 2.5 , cc by-sa 3.0 and cc by-sa 4.0