2013-09-26 19:50:11 +08:00
|
|
|
// This file is part of mongoose web server project,
|
|
|
|
// https://github.com/cesanta/mongoose
|
|
|
|
|
|
|
|
using System;
|
|
|
|
using System.Runtime.InteropServices;
|
|
|
|
|
|
|
|
public class Program {
|
2013-10-06 19:16:46 +08:00
|
|
|
static private int EventHandler(MongooseEvent ev) {
|
|
|
|
if (ev.type != 1) {
|
|
|
|
return 0; // Mark as unhandled
|
|
|
|
}
|
|
|
|
|
|
|
|
MongooseRequestInfo request_info = (MongooseRequestInfo)
|
|
|
|
Marshal.PtrToStructure(ev.request_info, typeof(MongooseRequestInfo));
|
|
|
|
|
|
|
|
if (request_info.uri != "/test") {
|
|
|
|
return 0; // Mark as unhandled
|
|
|
|
}
|
|
|
|
|
|
|
|
Mongoose.write(ev.conn, "HTTP/1.1 200 OK\r\n\r\n");
|
|
|
|
Mongoose.write(ev.conn, "Hello from C#!\n");
|
|
|
|
|
|
|
|
return 1; // Mark as handled
|
2013-09-26 19:50:11 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
static void Main() {
|
2013-10-06 19:16:46 +08:00
|
|
|
Mongoose web_server = new Mongoose(".", "9000",
|
|
|
|
new MongooseEventHandler(EventHandler));
|
2013-09-26 19:50:11 +08:00
|
|
|
|
|
|
|
Console.WriteLine("Mongoose v." + web_server.version_ + " started.");
|
|
|
|
Console.WriteLine("Press enter to exit program.");
|
|
|
|
|
|
|
|
// Serve requests until user presses "enter" on a keyboard
|
|
|
|
Console.ReadLine();
|
2013-10-06 19:16:46 +08:00
|
|
|
web_server.stop();
|
2013-09-26 19:50:11 +08:00
|
|
|
}
|
|
|
|
}
|