I have been using ieHTTPHeaders recently as my HTTP sniffer of choice, it installs as an explorer tool bar for Microsoft Internet Explorer bar.

 

 

I find it necessary to explain the very basics of HTTP for some reason, it struck me that there are probably many developers who have added a button and a text box to a ASP.NET page without really thinking about the plumbing between the browser and the web server. While these additional layers are designed for ease of use and rapid application development, I do fear the collective is being dumbed down ... so ...

 

HTTP is a request/response protocol between clients and servers. An HTTP client initiates a request by establishing TCP connection to a  port on a web server (port 80 by default). A HTTP server (e.g. IIS) listens for these afore mentioned requests message on the selected port.

Upon receiving the request, the server will send back a status line e.g "HTTP/1.1 200 OK", and a message of its own, the body could be the the requested file or some other information. Resources to be accessed by HTTP are identified using Uniform Resource Identifiers (URIs/URLs) using the http: or https URI schemes.

The request message from the above, requests a JavaServer Page from the /scores directory as follows:
GET /scores/SimpleScoreboard.jsp HTTP/1.1

 

"Knowledge is the life of the mind." - Abu Bakr