NAME
Mojo::Transaction::HTTP::Role::Mechanize - Mechanize Mojo a little
SYNOPSIS
use
Mojo::UserAgent;
my
$ua
= Mojo::UserAgent->new;
my
$tx
=
$ua
->get(
'/'
)->with_roles(
'+Mechanize'
);
# call submit immediately
my
$submit_tx
=
$tx
->submit(
'#submit-id'
,
username
=>
'fry'
);
$ua
->start(
$submit_tx
);
# first extract form values
my
$values
=
$tx
->extract_forms->first->val;
$submit_tx
=
$tx
->submit(
'#submit-id'
,
counter
=>
$values
->{counter} + 3);
$ua
->start(
$submit_tx
);
DESCRIPTION
Role::Tiny based role to compose a form submission "trait" into Mojo::Transaction::HTTP.
METHODS
Mojo::Transaction::HTTP::Role::Mechanize implements the following method.
extract_forms
$collection
=
$tx
->extract_forms;
Returns a Mojo::Collection of Mojo::DOM elements with activated Mojo::DOM::Role::Form that contains all the forms of the page.
submit
# result using selector
$submit_tx
=
$tx
->submit(
'#id'
,
username
=>
'fry'
);
# result without selector using default submission
$submit_tx
=
$tx
->submit(
username
=>
'fry'
);
# passing hash, rather than list, of values
$submit_tx
=
$tx
->submit({
username
=>
'fry'
});
# passing hash, rather than list, of values and a selector
$submit_tx
=
$tx
->submit(
'#id'
, {
username
=>
'fry'
});
Build a new Mojo::Transaction::HTTP object with "tx" in Mojo::UserAgent::Transactor and the contents of the form
with the $id
and merged values. If no selector is given, the first non-disabled button or appropriate input element (of type button, submit, or image) will be used for the submission.
AUTHOR
kiwiroy - Roy Storey kiwiroy@cpan.org
tekki - Rolf Stöckli tekki@cpan.org
lindleyw - William Lindley wlindley+remove+this@wlindley.com
LICENSE
This library is free software and may be distributed under the same terms as perl itself.