0

次のコードがあり、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;
4

1 に答える 1

0

まず、正しい content-type を指定する必要があります。

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を参照してください。

于 2013-04-17T04:52:01.400 に答える