----- Original Message ----- From: "Robert Wohlfarth" <[email protected]>
To: "Perl List" <[email protected]> Sent: Tuesday, December 22, 2009 5:47 PM Subject: Re: XML::Simple question
On Tue, Dec 22, 2009 at 9:54 AM, Mike Blezien <[email protected]>wrote:were using the XML/Simple module to process a XML response using the code below. But for some reason the module can't read the $xmlresponse data unless we create a temp file first to store the data then pass that to the module. Is there a way to do this without having to create a temp file first. ?? Everything does work, the response is return. We used the Data/Dumper module to verify the data first. ========================================================= my $ua = new LWP::UserAgent; $ua->timeout(10); $ua->agent("HTTP/1.1"); my $req = new HTTP::Request 'POST' => "$xmlscript"; $req->content_type("application/x-www-form-urlencoded"); $req->content($xmlrequest); my $res = $ua->request($req); my $error = $res->is_error(); my $success = $res->is_success(); # Data returned in XML Format my $xmlresponse = $res->content(); my $simple = new XML::Simple(KeyAttr=>[]); # read XML file my $xmldata = $simple->XMLin("$xmlresponse"); # can't read the response in this manner ===================================================Try the "parse_string" method instead. The documentation says that XMLin guesses based on the presence of "<" and ">" characters. It appears that XMLin guesses wrong in your case. "parse_string" explicitly expects an XML string. So there's no logic to confuse. -- Robert Wohlfarth
Thanks Robert, that did the trick :) Mike(mickalo)Blezien =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= Thunder Rain Internet Publishing Custom Programming & Web Hosting Services http://www.thunder-rain.com/ =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected] http://learn.perl.org/
