« 会社のサイトがリニューアル | トップ | PHPのソースコードを貼り付けるために »

2007年12月26日

PerlでLWPでMultipleな送信  このエントリをはてなブックマークに登録 

なんか、毎回どうするんだっけと調べているような気がするので覚書。

HTTP::Request::Commonの最近のやつには

Multivalued form fields can be specified by either repeating the field
name or by passing the value as an array reference.

と書いてあるけれど、日本語訳のドキュメントは古いバージョンのやつだからか、この部分が存在しない。
以前は簡単には行えなかったのかな?

use HTTP::Request::Common;
my $ua = LWP::UserAgent->new;
my $req = POST "http://www.example.com/",
[ foo => 'bar',
bar => 'foo',
hoge => [ qw( aaa bbb ccc ) ]
];
my $res = $ua->request($req);

みたいな感じ。

これで、POSTの内容は、

foo=bar&bar=foo&hoge=aaa&hoge=bbb&hoge=ccc

になる。
WWW::Mechanize とか使ったほうがいいんでしょうけどね。

投稿者 田中@グリニッジ : 2007年12月26日 21:34

トラックバック

このエントリーのトラックバックURL:
http://blog.tanaka-cs.com/mt/mt-tb.cgi/135

コメント

コメントしてください




保存しますか?


楽天トラベル 夏の旅行