DOKK / manpages / debian 12 / libfurl-perl / Furl::Request.3pm.en
Furl::Request(3pm) User Contributed Perl Documentation Furl::Request(3pm)

Furl::Request - Request object for Furl

    my $f = Furl->new;
    my $req = Furl::Request->new($method, $uri, $headers, $content);
    my $res = $f->request($req);
    print $req->request_line, "\n";
    my $http_req = $req->as_http_request;
    my $req_hash = $req->as_hashref;

This is a HTTP request object in Furl.

    my $req = Furl::Request->new($method, $uri);
    # or
    my $req = Furl::Request->new($method, $uri, \%headers);
    # or
    my $req = Furl::Request->new($method, $uri, \%headers, $content);
    # and
    my $req = Furl::Request->parse($http_request_raw_string);

$req->method($method)
Gets/Sets HTTP request method
$req->uri($uri)
Gets/Sets request URI
$req->headers($headers)
Gets/Sets instance of Furl::Headers
$req->content($content)
$req->body($content)
Gets/Sets request body in scalar.
$req->protocol($protocol)
    $req->protocol('HTTP/1.1');
    print $req->protocol; #=> "HTTP/1.1"
    

Gets/Sets HTTP protocol in string.

$req->content_length
$req->content_type
$req->header
Shorthand to access Furl::Headers.
$req->as_http_request
Make instance of HTTP::Request from Furl::Request.
$req->as_hashref
Convert request object to HashRef.

Format is following:

    method: Str
    uri: Str
    protocol: Str
    headers: ArrayRef[Str]
    content: Str
    
$req->request_line
    print $req->request_line; #=> "GET / HTTP/1.1"
    

Returns HTTP request line.

2022-02-20 perl v5.34.0