DotnetCGI
1.0.0
Este código ilustra como implementar o padrão de interface de gateway comum com C#. Criei uma classe CGICONTEXT simples que criará um HTTPrequestMessage a partir das variáveis de ambiente passadas pelo servidor da Web. Você pode usar isso para ler a entrada e responder adequadamente.
Por que? Por que não? Isso foi apenas educacional para ver como o CGI funciona como um método IPC.
Amostra
using Dotnet.Cgi;
using Newtonsoft.Json.Linq;
var app = new CgiApp();
app.Map(HttpMethod.Get, "/cgi/SampleCgiApp.exe/", async (context, parameters) =>
{
var responseContent = new JObject
{
["env"] = JObject.FromObject(Environment.GetEnvironmentVariables()),
["context"] = JObject.FromObject(context),
["requestBody"] = context.Request.Content?.ReadAsStringAsync().Result,
};
await context.Created(responseContent);
});
await app.Execute();