2011-06-03 2 views
3

Я хочу создать набор параметров формы для использования в HTTP POST на лету, но я не уверен, как получить доступ к структуре данных LWP :: UserAgent динамически.Как создать параметры формы LWP :: UserAgent динамически?

В типичном примере кода эта структура передается как запрос.

my $response = $browser->post(
    'http://example.com/postme', 
    [ 
    'param1' => 'value1', 
    'param2' => 'value2' 
    ], 
); 

У меня есть набор имен параметров и значений, хранящихся в хэш, и я хочу, чтобы построить структуру в квадратных скобках из моих хеш-данных. Что это за структура и как я могу делать то, что хочу? (как вы можете сказать, я не эксперт perl!)

ответ

5

Квадратные скобки строят arrayref, но в этом случае метод post принимает либо массив, либо hashref. Таким образом, вы можете просто сделать:

my %params; 
$params{param1} = 'value1'; # store parameters into %params here 
my $response = $browser->post('http://example.com/postme', \%params); 

Read perlreftut для введения в ссылках, и perlref для более подробной информации.

+0

Perfect. Большое спасибо! – Brabster

Смежные вопросы