diff options
| author | spl3g <spleefer6@yandex.ru> | 2025-03-21 14:37:04 +0300 |
|---|---|---|
| committer | spl3g <spleefer6@yandex.ru> | 2025-03-22 11:12:11 +0300 |
| commit | 66dee85d1fbfe7fecdd37503389ad467c3ccfb81 (patch) | |
| tree | 7cdd0c6a08b1b4abd37d1f4cd062090eaa4180a8 /main.c | |
| parent | 358f08897aca0aafeed993e91ef63edc00fd288f (diff) | |
Add global middleware support
Diffstat (limited to 'main.c')
| -rw-r--r-- | main.c | 12 |
1 files changed, 9 insertions, 3 deletions
@@ -9,7 +9,12 @@ void success(struct request req) { void logging_func(http_middleware *self, struct request req) { (self->next->func)(self->next, req); - http_log(HTTP_INFO, "[1]"CS_FMT" "CS_FMT": %ld\n", CS_ARG(req.method), CS_ARG(req.path), req.resp->code); + http_log(HTTP_INFO, CS_FMT" "CS_FMT": %ld\n", CS_ARG(req.method), CS_ARG(req.path), req.resp->code); +} + +void whatever(http_middleware *self, struct request req) { + http_log(HTTP_INFO, "Whatever"); + (self->next->func)(self->next, req); } int main() { @@ -19,8 +24,9 @@ int main() { return 1; } - handler *success_handler = handle_path(&serv, CS("GET"), CS("/"), success); - http_register_handler_middleware(&arena, success_handler, logging_func); + http_register_global_middleware(&serv, logging_func); + handler *success_handler = http_handle_path(&serv, CS("GET"), CS("/"), success); + http_register_handler_middleware(&arena, success_handler, whatever); listen_and_serve(&serv); |
