The interface is composed of frontend form elements which are programmed to validate and format the input data before the request beings. This is achieved through event handlers like click actions, view changes, and text editing. Once you click send, the data from the inputs is ready for processing to start.

Requests are processed using a custom internal entity called the request engine. Input data is fed to this engine, read to take the form entry input text, and transformed into data structures needed to suffice the request method. This is achieved by drafting a new request each time you click send.

HttpClient

System.Net.Http.HttpClient
System.Net.Http.HttpResponseMessage

Below, a new HttpClient object is created in the request engine before calling GetAsync() method. This is the core of the application: each input change directly or indirectly manipulates the client object here.

// Initialize a new client object
HttpClient client = new HttpClient();

// Call the get method and wait to assign the server
using HttpResponseMessage response = await client.GetAsync(client.BaseAddress);

client: the variable responsible to send the request message to the server

response: the variable responsible for receiving the server message

Each send thereafter resets the engine, whereby a new request is drafted using your decision inputs. This means a new connection is made on subsequent requests.

The request finalizes and the client is no longer needed. The default timeout for a request client is 1:40. An exception will be written to the response window in red when this happens.