A simple FileHandler which provides a tool for developers working with HTTP based network protocols. It allows the assembly of an arbitrary HTTP request, sending that to a given server and receiving the response from that server.
The request to send can be edited freely and the provided editing window allows to customize a set of snippets to insert based on application variables.
The user interface provides a two pane split window with the left side showing the request to be sent and the right will receive the response from the server.
Right clicking into the left pane will display a menu with variables to insert. Inserting the content of such a variable will do so at the current cursor position and will replace any text selection. The menu is organized hierarchically based on the names of available variables and is built dynamically based on what variables are found.
Before sending a request it must be validated. This can be accomplished by “Test”ing or “Auth”enticating it, by adding or updating the “Content”-Length header or by adding “Cookies” through one of the corresponding buttons. Doing so will check the request for correct HTTP syntax and enables the “Send” button if it passes this test. This is necessary again after each modificaton of the request content.
Sending the request involves opening a connection and writing the request to it. After that succeeded, the resulting response is read from that connection, displayed in the right pane and the connection is closed.
After receiving a response, it is possible to select any text in the right pane and assign that selection to an application variable. Right clicking into the right pane with an active text selection will display a menu to set that selection to one of the available variables. This allows for example to copy a received ETag into the corresponding variable and will then enable variable expansion in the request pane with that value. The possibilities are numerous ...
A received response can be saved either in its entirety or only the body
without the received HTTP message header. The former will save a file
named as the request file but with extension .response
while the latter saves to a file with extension .body
.
The data so saved corresponds to the actually received data (even in binary
form), regardless of how this data is represented in the response pane.
As this FileHandler supports modification and saving of the loaded data, it is an editor by nature.