This Emacs addon is useful for interactive testing and debugging hand-written HTTP requests:
- Write your request.
C-c C-c(re)sends the request.
C-u C-c C-c to change the destination or port.)
The request can either be written from scratch or you can paste it from a snoop/tcpdump and then twiddle from there.
The mode will also activate automatically when opening a filename ending with
M-x http-twiddle-mode-demo in Emacs for a simple get-started example.
If the Content-Length header is not written out (like in the examples below) it'll be added automatically on send.
GET /user/bob/ HTTP/1.1 Host: example.com [blank line here]
POST /user/create/ HTTP/1.1 Host: example.com Content-Type: text/xml Connection: close <user><name>Bob</name><email>firstname.lastname@example.org</email></user>
Version 1.0 was written by Luke Gorrie email@example.com in February 2006 and released to the public domain.