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

Shmengy has asked for the wisdom of the Perl Monks concerning the following question:

Hi All:

I am having a problem with a particular script that is supposed to receive a string from a business partner, alter the string and return it to them, giving the 200 OK at each step.

They have told me that, "I guess what is happening is that since you've configured your script to return a 500 ERR response that our server continues to POST. Our server POSTs until you return a 200 OK".

I don't see how I have configured my script to return 500 ERR (or *ANYTHING* for that matter). The code in question is below.

Any/all help is greatly appreciated.

#read the post from partner system and add 'cmd' read (STDIN, $query, $ENV{'CONTENT_LENGTH'}); $query .= '&cmd=_notify-validate'; # post back to partner system to validate use LWP::UserAgent; $ua = LWP::UserAgent->new; my $req = HTTP::Request->new(POST => 'http://www.foo.bar/test.pl'); $req->content_type('application/x-www-form-urlencoded'); $req->content($query); my $res = $ua->request($req); # split posted variables into pairs @pairs = split(/&/, $query); $count = 0; foreach $pair (@pairs) { ($name, $value) = split(/=/, $pair); $value =~ tr/+/ /; $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg; $variable{$name} = $value; print STDERR "$name => $value\n"; $count++; }