perlのNet::AmazonでアソシエイトIDを指定する方法。
perlのNet::AmazonでアソシエイトIDを指定する方法が分からなくて、 ソース読んでやっと分かったのでメモ。
ぶっちゃけ結論から言うと、Net::Amazon::Request::*系のオブジェクトを生成するときに、
コンストラクタの引数で直接ECS4のパラメーターを指定すればOK。
要するにこんな感じ。
use Net::Amazon;
use Net::Amazon::Request::ASIN;
my $token = 'XXXXXXXXXXXXXXXXXXXX';
my $locale = 'jp';
my $ua = Net::Amazon->new( token => $token, locale => $locale );
my $req = Net::Amazon::Request::ASIN->new( asin => 4061826263, AssociateTag => 'example-22' );
my $res = $ua->request( $req );
AssociateTag以外のパラメータも上記の方法で指定できるみたい。
が、Net::Aamzonが内部でいじってるパラメーターを指定するとおかしくなるかもしれない。
まあもっと泥臭いコードを書かなきゃいけないのかと思ったら以外とシンプルに書けた。
まあこれでNet::Amazonを使ったアフィリエイトサイトとか作れそうです。 多分当分はやらないだろうけど。