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

I want to send 2 different files to an API. File-1 contains XML data and File-2 is a MS word document. I am using following code:

my $signedURL = ‘signedURL'; my $file = ‘C:\some.docx'; my $text = read_file( ‘C:\some.xml’ ) ; my $ua = LWP::UserAgent->new; my $req = $ua->request(PUT $signedURL, Content_Type => ‘form-data’, Content => [ XML => $text, Upload => [“$file”] ] ); print “\nRESPONSE — \n” . $req->as_string; # Check the outcome of the response if ($req->is_success) { print $req->content; } else { print “\n in else not success\n”; }

It is generating following error:

Not a SCALAR reference at C:/Dwimperl/perl/vendor/lib/HTTP/ +line 156. at C:/Dwimperl/perl/vendor/lib/HTTP/ line 156 HTTP::Message::add_content(‘HTTP::Request=HASH(0x34f4f54)’, ‘ARRAY(0x3 +4e 84bc)’) called at C:/Dwimperl/perl/vendor/lib/HTTP/Request/ l +ine 108 HTTP::Request::Common::_simple_req(undef, undef, undef, undef) called +at C:/Dwimperl/perl/vendor/lib/HTTP/Request/ line 22 HTTP::Request::Common::PUT(‘ +il Merge?withRegions…’, ‘Content_Type’, ‘form-data’, ‘Content’, ‘ARRAY(0x +34e84bc) ‘) called at line 50 Press any key to continue . . .

Please, guide