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


in reply to Re^11: json return value
in thread json return value

This novice is back again. My cgi works when the following line of code is used as it uses the parameters after the logical or operator...

my $data = $q->param('POSTDATA') || '{"a":100,"b":300}';

but it doesn't when the following line is used...

my $data = $q->param('POSTDATA'};

I'm posting up the following json statement which I checked on jsonlint and gave no errors.

{"par":12345678912345,"id":20}

I get the following webserver error message

File does not exist: /home/myurl/public_html/500.shtml

It looks to as if the parameters are not parsed correctly or are not being received properly. Any help greatly appreciated

Replies are listed 'Best First'.
Re^13: json return value
by Anonymous Monk on Jul 26, 2013 at 02:51 UTC

      When I post the same json test to my test url using a perl client and print it back using Data::Dumper, I get the response

      $VAR1 = '{"imei":13226004711772,"id":20}'; which is fine.

      However, if I post it using our embedded C commands in our unit, I receive ...

      $VAR1 = undefined.

      ...not much help there.

      I have posted it to another website based on PHP and the data shows up there. I get the response

      (POST: ) (BODY: {"par":12345678912345,"id":20 }) which I expect.

      so I know it is being posted OK. It looks at the moment as it our unit is coding it in a format that this line..

      my $data = $q->param('POSTDATA');

      is having a problem with.