NAME
HTTP::Request::CurlParameters - container for a Curl-like HTTP request
SYNOPSIS
my $ua = LWP::UserAgent->new;
my $params = HTTP::Request::CurlParameters->new(argv => \@ARGV);
my $response = $ua->request($params->as_request);
DESCRIPTION
Objects of this class are mostly created from HTTP::Request::FromCurl. Most likely you want to use that module instead:
my $ua = LWP::UserAgent->new;
my $params = HTTP::Request::FromCurl->new(command_curl => $cmd);
my $response = $ua->request($params->as_request);
METHODS
->new
Options:
method
method => 'GET'
The HTTP method to use.
uri
uri => 'https://example.com'
The URI of the request.
headers
headers => { 'Content-Type' => 'text/json', 'X-Secret' => ['value-1', 'value-2'], }
The headers of the request. Multiple headers with the same name can be passed as an arrayref to the header key.
cookie_jar
The cookie jar to use.
cookie_jar_options
Options for the constructor of the cookie jar.
credentials
credentials => 'hunter2:secret'
The credentials to use for basic authentication.
auth
auth => 'basic'
The authentication method to use.
post_data
post_data => ['A string','across multiple','scalars']
The POST body to use.
body
body => '{"greeting":"Hello"}'
The body of the request.
timeout
timeout => 50
The timeout for the request
unix_socket
unix_socket => '/var/run/docker/docker.sock'
The timeout for the request
local_address
local_address => '192.0.2.116'
The local network address to bind to when making the request
form_args
The HTML form parameters. These get converted into a body.
insecure
insecure => 1
Disable SSL certificate verification
cert
cert => '/path/to/certificate',
Use the certificate file for SSL
capath
capath => '/path/to/cadir/',
Use the certificate directory for SSL
output
Name of the output file
max_filesize
Maximum size (in bytes) of a file to download
show_error
show_error => 0
Show error message on HTTP errors
fail
fail => 1
Let the Perl code
die
on error
->as_request
$ua->request( $r->as_request );
Returns an equivalent HTTP::Request object
$r->as_request
my $r = $curl->as_request;
Returns a HTTP::Request object that represents the Curl options.
$r->as_snippet( %options )
print $r->as_snippet( type => 'LWP' );
Returns a code snippet that returns code to create an equivalent HTTP::Request object and to perform the request using WWW::Mechanize.
This is mostly intended as a convenience function for creating Perl demo snippets from curl
examples.
Options
- implicit_headers
-
Arrayref of headers that will not be output.
Convenient values are ['Content-Length']
- type
-
type => 'Tiny',
Type of snippet. Valid values are
LWP
for LWP::UserAgent,Mojolicious
for Mojolicious::UserAgent andTiny
for HTTP::Tiny.
$r->as_curl
print $r->as_curl;
Returns a curl command line representing the request
This is convenient if you started out from something else or want a canonical representation of a curl command line.
- curl
-
The curl command to be used. Default is
curl
.
$r->as_wget
print $r->as_wget;
Returns a curl command line representing the request
This is convenient if you started out from something else or want a canonical representation of a curl command line.
- wget
-
The curl command to be used. Default is
wget
.
$r->clone
Returns a shallow copy of the object
REPOSITORY
The public repository of this module is http://github.com/Corion/HTTP-Request-FromCurl.
SUPPORT
The public support forum of this module is https://perlmonks.org/.
BUG TRACKER
Please report bugs in this module via the Github bug queue at https://github.com/Corion/HTTP-Request-FromCurl/issues
AUTHOR
Max Maischein corion@cpan.org
COPYRIGHT (c)
Copyright 2018-2023 by Max Maischein corion@cpan.org
.
LICENSE
This module is released under the same terms as Perl itself.