http_server_test.cpp 857 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. /*
  2. * sample http server
  3. * more detail see examples/httpd
  4. *
  5. */
  6. #include "HttpServer.h"
  7. int main() {
  8. HV_MEMCHECK;
  9. HttpService service;
  10. service.GET("/ping", [](HttpRequest* req, HttpResponse* resp) {
  11. resp->body = "pong";
  12. return 200;
  13. });
  14. service.POST("/echo", [](HttpRequest* req, HttpResponse* resp) {
  15. resp->content_type = req->content_type;
  16. resp->body = req->body;
  17. return 200;
  18. });
  19. http_server_t server;
  20. server.port = 8080;
  21. // uncomment to test multi-processes
  22. // server.worker_processes = 4;
  23. // uncomment to test multi-threads
  24. // server.worker_threads = 4;
  25. server.service = &service;
  26. #if 1
  27. http_server_run(&server);
  28. #else
  29. // test http_server_stop
  30. http_server_run(&server, 0);
  31. sleep(10);
  32. http_server_stop(&server);
  33. #endif
  34. return 0;
  35. }