-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathmain.c
36 lines (33 loc) · 1.18 KB
/
main.c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#include "cgi.h"
CGI getIndex(cgi_session_t * session) {
cgi_write_out(session, "Status: 200 OK\r\n");
cgi_write_out(session, "Content-Type: text/plain\r\n\r\n");
cgi_write_out(session, "%s\n", "HI!\n");
if(session->query_str) {
char *value = cgi_get_query_param(session, "token", 5);
if(value)
cgi_write_out(session, "token = %s\n", value);
value = cgi_get_query_param(session, "session", 7);
if(value)
cgi_write_out(session, "session = %s\n", value);
}
}
CGI postIndex(cgi_session_t * session) {
cgi_str_t payload;
if( cgi_read_body(session, &payload) ) {
printf("the sz is = %ld\n", payload.len);
cgi_write_out(session, "Status: 200 OK\r\n");
cgi_write_out(session, "Content-Type: text/plain\r\n\r\n");
// cgi_write_out(session, "Content-Type: application/x-www-form-urlencoded\r\n\r\n");
cgi_write_out(session, "Query String %s\n", session->query_str ? session->query_str : "");
cgi_write_out(session, "Body %s\n", payload.data);
}
}
int cgi_main(int argc, char *argv[], cgi_config_t *cgi_conf) {
cgi_conf->sock_port = 2005;
cgi_conf->backlog = 160;
cgi_conf->max_thread = 64;
cgi_conf->daemon = 1;
cgi_parse_function(cgi_conf, "getIndex", "postIndex");
return 0;
}