NAME
WWW::OAuth::Request::Basic - HTTP Request container for HTTP::Tiny
SYNOPSIS
my $req = WWW::OAuth::Request::Basic->new(method => 'POST', url => $url, content => $content);$req->request_with(HTTP::Tiny->new);
DESCRIPTION
WWW::OAuth::Request::Basic is a request container for WWW::OAuth that stores the request parameters directly, for use with user-agents that do not use request objects like HTTP::Tiny. It performs the role WWW::OAuth::Request.
ATTRIBUTES
WWW::OAuth::Request::Basic implements the following attributes.
content
my $content = $req->content;$req = $req->content('foo=1&bar=2');
Request content string.
headers
my $headers = $req->headers;$req = $req->headers({});
Hashref of request headers. Must be updated carefully as headers are case-insensitive. Values can be array references to specify multi-value headers.
method
my $method = $req->method;$req = $req->method('GET');
Request method.
url
my $url = $req->url;$req = $req->url('http://example.com/api/');
Request URL.
METHODS
WWW::OAuth::Request::Basic composes all methods from WWW::OAuth::Request, and implements the following new ones.
content_is_form
my $bool = $req->content_is_form;
Check whether "headers" contains a "Content-Type" header set to "application/x-www-form-urlencoded".
header
my $header = $req->header('Content-Type');$req = $req->header(Authorization => 'Basic foobar');
Set or return a request header in "headers".
set_form
$req = $req->set_form({foo => 'bar'});
Convenience method to set "content" to a urlencoded form. Equivalent to:
use WWW::OAuth::Util 'form_urlencode';$req->header('Content-Type' => 'application/x-www-form-urlencoded');$req->content(form_urlencode $form);
request_with
my $res = $req->request_with(HTTP::Tiny->new);
Run request with passed HTTP::Tiny user-agent object, and return response hashref, as in "request" in HTTP::Tiny.
BUGS
Report any issues on the public bugtracker.
AUTHOR
Dan Book <[email protected]>
COPYRIGHT AND LICENSE
This software is Copyright (c) 2015 by Dan Book.
This is free software, licensed under:
The Artistic License 2.0 (GPL Compatible)
SEE ALSO
HTTP::Tiny