To create an HTTP server with a head route in C#, we can make use of the HttpListener
class provided by the System.Net
namespace. Here's an example code snippet that sets up a server to listen for incoming HTTP requests and responds only to HEAD requests:
main.cs933 chars31 lines
In this example, we create a new HttpListener
instance and add a URL prefix to which we want to listen (http://localhost:8080/
). Then, we start the listener and enter into an infinite loop that blocks until an incoming HTTP request is detected.
Once the request is received, we check if it's a HEAD request (request.HttpMethod == "HEAD"
) and if so, we modify the response headers to include a Server
header, set the content type to text/plain
, and set the response status code to 200
.
Finally, we close the response object without writing any data to the response body, so that the server only sends back headers (no body).
Note that to test this server, you can use a tool like curl
from the command line:
157 chars7 lines
gistlibby LogSnag