mirror of
https://github.com/cesanta/mongoose.git
synced 2024-12-28 07:28:13 +08:00
Example changed to evented API
This commit is contained in:
parent
2f0b411ddd
commit
2264520a2f
@ -15,7 +15,7 @@ Here's a minimal application `app.c` that embeds mongoose:
|
||||
#include "mongoose.h"
|
||||
|
||||
int main(void) {
|
||||
struct mg_server *server = mg_create_server(NULL);
|
||||
struct mg_server *server = mg_create_server(NULL, NULL);
|
||||
mg_set_option(server, "document_root", "."); // Serve current directory
|
||||
mg_set_option(server, "listening_port", "8080"); // Open port 8080
|
||||
for (;;) mg_poll_server(server, 1000); // Infinite loop, Ctrl-C to stop
|
||||
@ -51,19 +51,27 @@ http://127.0.0.1:8080/hello will say hello, and here's the code:
|
||||
#include <string.h>
|
||||
#include "mongoose.h"
|
||||
|
||||
static int handle_hello(struct mg_connection *conn) {
|
||||
static const char *reply = "Hello world!\n";
|
||||
mg_write_data(conn, reply, strlen(reply));
|
||||
return 1;
|
||||
static int event_handler(struct mg_connection *conn, enum mg_event ev) {
|
||||
if (ev == MG_AUTH) {
|
||||
return MG_TRUE; // Authorize all requests
|
||||
} else if (ev == MG_REQ_BEGIN) {
|
||||
mg_printf_data(conn, "%s", "Hello world");
|
||||
return MG_TRUE; // Mark as processed
|
||||
} else {
|
||||
return MG_FALSE; // Rest of the events are not processed
|
||||
}
|
||||
}
|
||||
|
||||
int main(void) {
|
||||
struct mg_server *server = mg_create_server(NULL);
|
||||
struct mg_server *server = mg_create_server(NULL, event_handler);
|
||||
mg_set_option(server, "document_root", ".");
|
||||
mg_set_option(server, "listening_port", "8080");
|
||||
mg_add_uri_handler(server, "/hello", &handle_hello);
|
||||
for (;;) mg_poll_server(server, 1000); // Infinite loop, Ctrl-C to stop
|
||||
|
||||
for (;;) {
|
||||
mg_poll_server(server, 1000); // Infinite loop, Ctrl-C to stop
|
||||
}
|
||||
mg_destroy_server(&server);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user