Uploading multiple files using LWP
Simon Wistow
simon at thegestalt.org
Tue Aug 10 07:38:33 BST 2010
I want to POST multiple files to an API endpoint.
HTTP::Request::Common says
POST 'http://www.perl.org/survey.cgi',
[ name => 'Gisle Aas',
email => 'gisle at aas.no',
gender => 'M',
born => '1964',
perc => '3%',
];
Multivalued form fields can be specified by either repeating the field
name or by passing the value as an array reference.
then later
The POST method also supports the multipart/form-data content used for
Form-based File Upload as specified in RFC 1867. You trigger this
content format by specifying a content type of 'form-data' as one of
the request headers. If one of the values in the $form_ref is an array
reference, then it is treated as a file part specification with the
following interpretation:
[ $file, $filename, Header => Value... ]
[ undef, $filename, Header => Value,..., Content => $content ]
Which means, as I understand it (and experimental evidence backs me
up), that I can't post multiple files because an array ref is used for
file attributes not multiple instances of files and an array ref of
array refs just doesn't work.
Is there some easy way of doing this or am I going to have to do
something mildly convoluted, possibly involving HTML::Form?
Simon
More information about the london.pm
mailing list