Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- int main(void) {
- // Backup the stdio streambufs
- streambuf * cin_streambuf = cin.rdbuf();
- streambuf * cout_streambuf = cout.rdbuf();
- streambuf * cerr_streambuf = cerr.rdbuf();
- FCGX_Request request;
- FCGX_Init();
- FCGX_InitRequest(&request, 0, 0);
- while (FCGX_Accept_r(&request) == 0) {
- fcgi_streambuf cin_fcgi_streambuf(request.in);
- fcgi_streambuf cout_fcgi_streambuf(request.out);
- fcgi_streambuf cerr_fcgi_streambuf(request.err);
- cin.rdbuf(&cin_fcgi_streambuf);
- cout.rdbuf(&cout_fcgi_streambuf);
- cerr.rdbuf(&cerr_fcgi_streambuf);
- const char * uri = FCGX_GetParam("REQUEST_URI", request.envp);
- string content = get_request_content(request);
- if (content.length() == 0) {
- content = ", World!";
- }
- printcontent(content);
- }
- // restore stdio streambufs
- cin.rdbuf(cin_streambuf);
- cout.rdbuf(cout_streambuf);
- cerr.rdbuf(cerr_streambuf);
- return 0;
- }
- void printcontent(string content)
- {
- cout << "Content-type: text/html\r\n"
- << "\r\n"
- << "<html>\n"
- << " <head>\n"
- << " <title>FCGI Test App</title>\n"
- << " </head>\n"
- << " <body>\n"
- << " <h1>Hello " << content << " from " << uri << " !</h1>\n"
- << " </body>\n"
- << "</html>\n";
- }
- void makejson(string content)
- {
- // Create JSON file from 'content' and save file in a predefined location
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement