DotnetCGI
1.0.0
Este código ilustra cómo implementar el estándar de interfaz de puerta de enlace común con C#. Creé una clase simple de CGiContext que construirá un httprequestMessage a partir de las variables de entorno pasadas por el servidor web. Luego puede usarlo para leer la entrada y responder adecuadamente.
¿Por qué? ¿Por qué no? Esto fue principalmente educativo para ver cómo funciona CGI como un método IPC.
Muestra
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();