GET vs POST

Peter Flynn (pflynn@curia.ucc.ie)
Thu, 11 May 95 17:02:16 EDT

Just checking the HTML3 doc and there seems to be no explicit detail
on GET vs POST. As I understood it, GET meant the server passed this
into QUERY_STRING for a shell script, whereas POST meant the server
passed it by block memory transfer into argv() for a C
program.

Testing this by sending some simple form data to my (NCSA) server
script test-cgi shows that the data does indeed appear in QUERY_STRING
when sent with GET, but vanishes into a black hole when sent (to the
script) with POST (as I would expect).

Testing it further by sending the same data to a C program with POST
gives me a correct response (the prog works) but using GET to a C
program causes a 500 error.

1. Am I right in thinking that the browser transmits the form data as
an appendage to the URL in x-www-form-urlencoded format regardless
of the setting of GET or POST?

2. An article in the June 95 Dr Dobbs (#231) by Andrew Davison phrases
it that POST means the script/prog receives the data on its std.in
whereas GET means it goes into QUERY_STRING. He warns that GET
should be avoided because some shells truncate commandline data.

Is this a misapprehension on Davison's part, or have I missed
something?

More importantly, should we document more clearly what the user may expect?

///Peter