#include #include #include #include #include void endpoint_func_index(struct mg_connection *nc, struct http_message *hm, endpoint_args_t *args, endpoint_response_t *response) { (void)args; (void)hm; (void)nc; static const char content[] = "Emgauwa"; response->status_code = 200; response->content_type = "text/plain"; response->content_length = STRLEN(content);; response->content = content; response->alloced_content = false; mg_serve_http(nc, hm, global_config.http_server_opts); } void endpoint_func_not_found(struct mg_connection *nc, struct http_message *hm, endpoint_args_t *args, endpoint_response_t *response) { (void)args; (void)hm; (void)nc; static const char content[] = "404 - NOT FOUND"; response->status_code = 404; response->content_type = "text/plain"; response->content_length = STRLEN(content);; response->content = content; response->alloced_content = false; mg_serve_http(nc, hm, global_config.http_server_opts); } void endpoint_response_text(endpoint_response_t *response, int status_code, const char *content, int content_length) { if(content == NULL) { content = ""; content_length = 0; } response->status_code = status_code; response->content_type = "text/plain"; if(content_length >= 0) { response->content_length = content_length; response->alloced_content = false; } else { response->content_length = strlen(content); response->alloced_content = true; } response->content = content; } void endpoint_response_json(endpoint_response_t *response, int status_code, const cJSON *json_root) { if(json_root != NULL) { char *json_str = cJSON_Print(json_root); if (json_str != NULL) { response->status_code = status_code; response->content_type = "application/json"; response->content_length = strlen(json_str); response->content = json_str; response->alloced_content = true; return; } } LOG_ERROR("failed to print schedule json\n"); static const char content[] = "failed to print json"; endpoint_response_text(response, status_code, content, STRLEN(content)); }