WWW::Curl -- accessing libcurl from perl
libcurl is a solid and reliable multi-protocol file transfer library for URL
syntax defined files. We can take advantage of libcurl straight from within
our Perl programs.
All you need to do is to install the WWW::Curl package and then you'll be
able to use the Perl binding.
How to Install
Install curl and libcurl first. Make sure you install the libcurl.so library
and curl's include files as well. (E.g. if you are using an rpm version of
curl, you will need to install the curl-devel rpm before you can build
the Perl binding.)
Run these commands:
cd [WWW::Curl-directory]
perl Makefile.PL
make
make test # optional, needs a test server
make install
The Makefile.PL uses curl-config and internal guesses to find curl.h, and
to then create a version of WWW::Curl which matches your installed libcurl version.
Read and edit Makefile.PL if your curl.h file cannot be found.
Binding documentation
The binding closely resembles the C
one, so it should be OK to study the regular libcurl
C/C++ API docs for most options.
Perl specific features are described in the WWW::Curl::easy POD documentation.
Examples
Here's a first basic example, please post your contributions!
Additional examples can be found in the 't/' directory of the distribution - the perl
regression test scripts. These exercise many of curls' functions, such as uploads,
callbacks and ssl, so are a useful starting point.
Download
From WWW::Curl v2.0 onwards, the releases of this module should be available from your
local CPAN mirror site, in the /authors/id/C/CR/CRISB directory, as well as from the main curl site.
See Changes for complete
change information.
For curl versions before 7.7, download the Perl binding version 1.0.2 from
www.koblenz-net.de/~horn/export/
Browse the files that are presently in CVS.
Credits
The current release of Curl::easy was re-written by and is currently maintained by Cris Bailiff.
The original Curl::easy interface was written by Georg Horn.
What is Perl?
You'll find more info on the official
Perl web page.