http://www.perlmonks.org?node_id=932081


in reply to Re: REST Webservices and CGI.pm
in thread REST Webservices and CGI.pm

Thanks for explaining this here. Is it documented anywhere? I have been chewing on CGI and the POSTDATA parameter for the last day, only to find out that the documentation is out-of-date. From the documentation on CPAN and perldoc:

If POSTed data is not of type application/x-www-form-urlencoded or multipart/form-data, then the POSTed data will not be processed, but instead be returned as-is in a parameter named POSTDATA.

...

(If you don't know what the preceding means, don't worry about it. It only affects people trying to use CGI for XML processing and other specialized tasks.)

So, me, thinking I am using CGI for XML processing... Only after having it print out everything it's got, I find a param('XForms:Model') - I can't find anything about that on CPAN or perldoc for CGI though! Can someone update the doc or should I file a bug-report on CPAN?

Replies are listed 'Best First'.
Re^3: REST Webservices and CGI.pm
by Corion (Patriarch) on Oct 18, 2011 at 08:12 UTC
    param('XForms:Model')

    would mean that something script sent a CGI parameter to your script with the name XForms:Model. Why would what other programs send to your script need to be documented in CGI.pm? Update: Ah - XForms:Model would be somewhat "special", I now see. If this is handled by CGI.pm, then it should be documented there indeed.

      Indeed. The code that sends, is this:
      my $browser = LWP::UserAgent->new; push @{ $browser->requests_redirectable }, 'POST'; my $response = $browser->post( $url, [], 'content-type'=> 'application/xml', 'content' => $xml );
      and just using a commandline curl POST (to indeed check LWP was not doing special stuff and inventing XForms:Model parameters) gives the same result.