WWW::REST - Base class for REST resources
This document describes version 0.011 of WWW::REST, released May 2, 2015.
use XML::RSS; use WWW::REST; $url = WWW::REST->new("http://nntp.x.perl.org/rss/perl.par.rdf"); $url->dispatch( sub { my $self = shift; die $self->status_line if $self->is_error; my $rss = XML::RSS->new; $rss->parse($self->content); return $rss; }); $url->get( last_n => 10 )->save("par.rdf"); $url->url("perl.perl5.porters.rdf")->get->save("p5p.rdf"); warn $url->dir->as_string; # "http://nntp.x.perl.org/rss/" warn $url->parent->as_string; # "http://nntp.x.perl.org/" $url->delete; # dies with "405 Method Not Allowed"
This module is a mixin of URI, LWP::UserAgent, HTTP::Response and an user-defined dispatch module. It is currently just a proof of concept for a resource-oriented API framework, also known as REST (Representational State Transfer).
Constructor (class method). Takes an URL string, returns a WWW::REST object. The optional arguments are passed to LWP::UserAgent->new.
Constructor (instance method). Takes an URL string, which may be relative to the object's URL. Returns a WWW::REST object, which inherits the same ua and dispatcher.
Gets or sets the dispatch code reference.
Gets or sets the embedded URI, LWP::UserAgent and HTTP::Response objects respectively. Note that $url can automatically delegate method calls to embedded objects, so normally you won't need to call those method explicitly.
$url
Performs the corresponding operation to the object; returns the object itself. If dispatch is set to a code reference, the object is passed to it instead, and returns its return value.
dispatch
Returns a WWW::REST object with the URL of the current object's parent directory.
Returns a WWW::REST object with the URL of the current object's current directory.
clone scheme opaque path fragment as_string canonical eq abs rel authority path path_query path_segments query query_form query_keywords userinfo host port host_port default_port
request send_request prepare_request simple_request request protocols_allowed protocols_allowed protocols_forbidden protocols_forbidden is_protocol_supported requests_redirectable requests_redirectable redirect_ok credentials get_basic_credentials agent from timeout cookie_jar conn_cache parse_head max_size clone mirror proxy no_proxy
code message request previous status_line base is_info is_success is_redirect is_error error_as_HTML current_age freshness_lifetime is_fresh fresh_until
This module is considered highly experimental and essentially unmaintained; it's kept on CPAN for historical purposes.
URI, LWP::UserAgent, HTTP::Response
Audrey Tang <cpan@audreyt.org>
To the extent possible under law, 唐鳳 has waived all copyright and related or neighboring rights to WWW::REST.
This work is published from Taiwan.
http://creativecommons.org/publicdomain/zero/1.0
1 POD Error
The following errors were encountered while parsing the POD:
Non-ASCII character seen before =encoding in '唐鳳'. Assuming UTF-8
To install WWW::REST, copy and paste the appropriate command in to your terminal.
cpanm
cpanm WWW::REST
CPAN shell
perl -MCPAN -e shell install WWW::REST
For more information on module installation, please visit the detailed CPAN module installation guide.