如何使用HTTP请求发布内容(Perl)

Tak*_*kun 10 perl http lwp

use LWP::UserAgent;
use Data::Dumper;

my $ua = new LWP::UserAgent;
$ua->agent("AgentName/0.1 " . $ua->agent);
my $req = new HTTP::Request POST => 'http://example.com';
$req->content('port=8', 'target=64'); #problem
my $res = $ua->request($req);

print Dumper($res->content);
Run Code Online (Sandbox Code Playgroud)

如何使用$ req-> content发送多条内容?$ req->内容期望什么样的数据?

它只发送最后一个.

编辑:

如果我将其格式化为'port = 8&target = 64',则可以找到它.有没有更好的办法?

Ωme*_*ega 14

my $ua      = LWP::UserAgent->new(); 
my $request = POST( $url, [ 'port' => 8, 'target' => 64 ] ); 
my $content = $ua->request($request)->as_string(); 
Run Code Online (Sandbox Code Playgroud)

  • 尽管问题中的代码我会采用完整的OOP方法:`my $ ua = LWP :: UserAgent-> new(); 我的$ response = $ ua-> post($ url,$ parameter); my $ content = $ response-> as_string();` (2认同)