| WWW-Shorten documentation | Contained in the WWW-Shorten distribution. |
WWW::Shorten::Metamark - Perl interface to metamark.net
use WWW::Shorten::Metamark; use WWW::Shorten 'Metamark'; $short_url = makeashorterlink($long_url); $long_url = makealongerlink($short_url);
A Perl interface to the web site metamark.net. Metamark simply maintains a database of long URLs, each of which has a unique identifier.
The function makeashorterlink will call the Metamark web site passing it
your long URL and will return the shorter Metamark version.
The function makealongerlink does the reverse. makealongerlink
will accept as an argument either the full Metamark URL or just the
Metamark identifier.
If anything goes wrong, then either function will return undef.
makeashorterlink, makealongerlink
See the main WWW::Shorten docs.
Iain Truskett <spoon@cpan.org>
Based on WWW::MakeAShorterLink by Dave Cross <dave@dave.org.uk>
WWW::Shorten, perl, http://metamark.net/
| WWW-Shorten documentation | Contained in the WWW-Shorten distribution. |
# $Id$
package WWW::Shorten::Metamark; use 5.006; use strict; use warnings; use base qw( WWW::Shorten::generic Exporter ); our @EXPORT = qw(makeashorterlink makealongerlink); our $VERSION = '1.91'; use Carp;
sub makeashorterlink ($) { my $url = shift or croak 'No URL passed to makeashorterlink'; my $ua = __PACKAGE__->ua(); my $resp = $ua->post( 'http://metamark.net/api/rest/simple', [ long_url => $url, ] ); return unless $resp->is_success; return if $resp->content =~ /^ERROR:/; # I love REST. It's so simple when done properly. return $resp->content; }
sub makealongerlink ($) { my $short_url = shift or croak 'No Metamark key / URL passed to makealongerlink'; my $ua = __PACKAGE__->ua(); my $resp = $ua->post( 'http://metamark.net/api/rest/simple', [ short_url => $short_url, ] ); return unless $resp->is_success; return if $resp->content =~ /^ERROR:/; # I love REST. It's so simple when done properly. return $resp->content; } 1; __END__