public static async Task StartServerAsync(params string[] prefixes)
{
try
{
WriteLine($"server starting at");
var listener = new WebListener();
foreach (var prefix in prefixes)
{
listener.UrlPrefixes.Add(prefix);
WriteLine($"\t{prefix}");
}
listener.Start();
do
{
using (RequestContext context = await listener.GetContextAsync())
{
context.Response.Headers.Add("content-type", new string[] { "text/html" });
context.Response.StatusCode = (int)HttpStatusCode.OK;
byte[] buffer = GetHtmlContent(context.Request);
await context.Response.Body.WriteAsync(buffer, 0, buffer.Length);
}
} while (true);
}
catch (Exception ex)
{
WriteLine(ex.Message);
}
}