NAME
RPC::Any::Interface::CGI - HTTP support for RPC::Any::Server in CGI environments
DESCRIPTION
In a CGI environment (like running under mod_cgi or mod_perl in Apache), the HTTP headers aren't available on STDIN
--instead they are in special environment variables. So RPC::Any CGI servers get their input partly from the environment. So the "input" to handle_input
is just the RPC data, and the HTTP headers are read from the environment. (However, you can still pass a CGI server an HTTP::Request object, in which case it will ignore the environment.)
Also, in a CGI environment, you can't just print the HTTP/1.1 200 OK
line at the top of the HTTP response, you have to send a special header, like Status: 200 OK
. So CGI servers return their output in that slightly different way.
All CGI servers are also HTTP servers, so they have all the capabilities specified in RPC::Any::HTTP. They just take their input and produce their output differently.