WWW::Curl::Easy3pm
Perl extension interface for libcurl
Usage
use WWW::Curl::Easy;my $curl = new WWW::Curl::Easy;$curl->setopt(CURLOPT_URL, 'http://oook.de');$curl->perform;my $err = $curl->errbuf;my $info = $curl->getinfo(CURLINFO_HTTP_CODE);
Overview
WWW::Curl::Easy is a Perl extension interface for libcurl.
Methods
$curl = new WWW::Curl::EasyThis method constructs a new WWW::Curl::Easy object.
$curl->setopt( CURLOPT_OPTION, $option )This method sets a curl option in the object.
$curl->performThis method performs the object.
$curl->errbufThis method returns all errors from the buffer of the object.
$curl->getinfo( CURLINFO_OPTION )This method returns the requested info from the object.
Aliases for these methods have also been created in the WWW::Curl::easy namespace, to provide some backwards compatability for existing scripts - you must still 'use WWW:Curl::Easy', but you can keep calling the functions by the lower case name for now. This will go away in a future release.
Constants
These are some short descriptions of the most common constants.A full list with descriptions can be found in the libcurlmanpages, curl_easy_setopt(3) and curl_easy_getinfo(3).This binding resembles the C one, so it should be OK to study theregular libcurl C/C++ API documentation.
CURLOPT_URLThe actual URL to deal with. The parameter should be a scalar.NOTE: this option is (the only one) required to be set beforeperform() is called.
This is a list of all available constants.
CURLOPT_AUTOREFERERCURLOPT_BUFFERSIZECURLOPT_CAINFOCURLOPT_CAPATHCURLOPT_CLOSEPOLICYCURLOPT_CONNECTTIMEOUTCURLOPT_CONNECT_ONLYCURLOPT_CONV_FROM_NETWORK_FUNCTIONCURLOPT_CONV_FROM_UTF8_FUNCTIONCURLOPT_CONV_TO_NETWORK_FUNCTIONCURLOPT_COOKIECURLOPT_COOKIEFILECURLOPT_COOKIEJARCURLOPT_COOKIELISTCURLOPT_COOKIESESSIONCURLOPT_CRLFCURLOPT_CUSTOMREQUESTCURLOPT_DEBUGDATACURLOPT_DEBUGFUNCTIONCURLOPT_DNS_CACHE_TIMEOUTCURLOPT_DNS_USE_GLOBAL_CACHECURLOPT_EGDSOCKETCURLOPT_ENCODINGCURLOPT_ERRORBUFFERCURLOPT_FAILONERRORCURLOPT_FILECURLOPT_FILETIMECURLOPT_FOLLOWLOCATIONCURLOPT_FORBID_REUSECURLOPT_FRESH_CONNECTCURLOPT_FTPAPPENDCURLOPT_FTPLISTONLYCURLOPT_FTPPORTCURLOPT_FTPSSLAUTHCURLOPT_FTP_ACCOUNTCURLOPT_FTP_ALTERNATIVE_TO_USERCURLOPT_FTP_CREATE_MISSING_DIRSCURLOPT_FTP_FILEMETHODCURLOPT_FTP_RESPONSE_TIMEOUTCURLOPT_FTP_SKIP_PASV_IPCURLOPT_FTP_SSLCURLOPT_FTP_USE_EPRTCURLOPT_FTP_USE_EPSVCURLOPT_HEADERCURLOPT_HEADERFUNCTIONCURLOPT_HTTP200ALIASESCURLOPT_HTTPAUTHCURLOPT_HTTPGETCURLOPT_HTTPHEADERCURLOPT_HTTPPOSTCURLOPT_HTTPPROXYTUNNELCURLOPT_HTTP_VERSIONCURLOPT_IGNORE_CONTENT_LENGTHCURLOPT_INFILECURLOPT_INFILESIZECURLOPT_INFILESIZE_LARGECURLOPT_INTERFACECURLOPT_IOCTLDATACURLOPT_IOCTLFUNCTIONCURLOPT_IPRESOLVECURLOPT_KRB4LEVELCURLOPT_LOCALPORTCURLOPT_LOCALPORTRANGECURLOPT_LOW_SPEED_LIMITCURLOPT_LOW_SPEED_TIMECURLOPT_MAXCONNECTSCURLOPT_MAXFILESIZECURLOPT_MAXFILESIZE_LARGECURLOPT_MAXREDIRSCURLOPT_MAX_RECV_SPEED_LARGECURLOPT_MAX_SEND_SPEED_LARGECURLOPT_NETRCCURLOPT_NETRC_FILECURLOPT_NOBODYCURLOPT_NOPROGRESSCURLOPT_NOSIGNALCURLOPT_PORTCURLOPT_POSTCURLOPT_POSTFIELDSCURLOPT_POSTFIELDSIZECURLOPT_POSTFIELDSIZE_LARGECURLOPT_POSTQUOTECURLOPT_PREQUOTECURLOPT_PRIVATECURLOPT_PROGRESSDATACURLOPT_PROGRESSFUNCTIONCURLOPT_PROXYCURLOPT_PROXYAUTHCURLOPT_PROXYPORTCURLOPT_PROXYTYPECURLOPT_PROXYUSERPWDCURLOPT_PUTCURLOPT_QUOTECURLOPT_RANDOM_FILECURLOPT_RANGECURLOPT_READFUNCTIONCURLOPT_REFERERCURLOPT_RESUME_FROMCURLOPT_RESUME_FROM_LARGECURLOPT_SHARECURLOPT_SOURCE_POSTQUOTECURLOPT_SOURCE_PREQUOTECURLOPT_SOURCE_QUOTECURLOPT_SOURCE_URLCURLOPT_SOURCE_USERPWDCURLOPT_SSLCERTCURLOPT_SSLCERTPASSWDCURLOPT_SSLCERTTYPECURLOPT_SSLENGINECURLOPT_SSLENGINE_DEFAULTCURLOPT_SSLKEYCURLOPT_SSLKEYPASSWDCURLOPT_SSLKEYTYPECURLOPT_SSLVERSIONCURLOPT_SSL_CIPHER_LISTCURLOPT_SSL_CTX_DATACURLOPT_SSL_CTX_FUNCTIONCURLOPT_SSL_VERIFYHOSTCURLOPT_SSL_VERIFYPEERCURLOPT_STDERRCURLOPT_TCP_NODELAYCURLOPT_TELNETOPTIONSCURLOPT_TIMECONDITIONCURLOPT_TIMEOUTCURLOPT_TIMEVALUECURLOPT_TRANSFERTEXTCURLOPT_UNRESTRICTED_AUTHCURLOPT_UPLOADCURLOPT_URLCURLOPT_USERAGENTCURLOPT_USERPWDCURLOPT_VERBOSECURLOPT_WRITEFUNCTIONCURLOPT_WRITEHEADERCURLOPT_WRITEINFOCURLINFO_CONNECT_TIMECURLINFO_CONTENT_LENGTH_DOWNLOADCURLINFO_CONTENT_LENGTH_UPLOADCURLINFO_CONTENT_TYPECURLINFO_COOKIELISTCURLINFO_DATA_INCURLINFO_DATA_OUTCURLINFO_EFFECTIVE_URLCURLINFO_ENDCURLINFO_FILETIMECURLINFO_FTP_ENTRY_PATHCURLINFO_HEADER_INCURLINFO_HEADER_OUTCURLINFO_HEADER_SIZECURLINFO_HTTPAUTH_AVAILCURLINFO_HTTP_CODECURLINFO_HTTP_CONNECTCODECURLINFO_LASTONECURLINFO_LASTSOCKETCURLINFO_NAMELOOKUP_TIMECURLINFO_NONECURLINFO_NUM_CONNECTSCURLINFO_OS_ERRNOCURLINFO_PRETRANSFER_TIMECURLINFO_PRIVATECURLINFO_PROXYAUTH_AVAILCURLINFO_REDIRECT_COUNTCURLINFO_REDIRECT_TIMECURLINFO_REQUEST_SIZECURLINFO_RESPONSE_CODECURLINFO_SIZE_DOWNLOADCURLINFO_SIZE_UPLOADCURLINFO_SPEED_DOWNLOADCURLINFO_SPEED_UPLOADCURLINFO_SSL_DATA_INCURLINFO_SSL_DATA_OUTCURLINFO_SSL_ENGINESCURLINFO_SSL_VERIFYRESULTCURLINFO_STARTTRANSFER_TIMECURLINFO_TEXTCURLINFO_TOTAL_TIME