我有以下代码,并希望使用API附加一个文件。这段代码传递给我的URL,但文件没有得到附加。
#!/usr/bin/perl
use LWP::UserAgent;
$ua = LWP::UserAgent->new;
my $response = $ua->post(Content_Type => 'application/xml');
#$ua->agent("Mozilla 8.0 blah...");
use HTTP::Request::Common qw(POST);
use LWP::UserAgent(POST);
my $request=(POST "http://Server/Test.jsp",
Content =>[
external => "false",
Filedata => "C:/Location.jpg"
]);
#$request = $ua->request($request);
my $results=$ua->request($request);
$content = $request->content;
print $content;
exit;
首先,您必须指定正确的内容类型。
my $request=(POST "http://Server/watson/api/bug/addAttachmentAPI.jsp",
Content_Type => 'form-data',
Content =>[
appGUID => "Test GUID",
第二,文件规范必须是一个形式为[ $file, $name, ... ]
的数组引用,其中...
是可选的头字段/值对(如果不包含头,则会猜测文件的内容类型)。
Filedata => ["C:Test Location/Upload/APIs.jpg", 'APIs.jpg'],
]);
参见HTTP::Request::Common获取更多信息