2004-11-24 11:11:35 -05:00
|
|
|
_ _ ____ _
|
|
|
|
___| | | | _ \| |
|
|
|
|
/ __| | | | |_) | |
|
|
|
|
| (__| |_| | _ <| |___
|
|
|
|
\___|\___/|_| \_\_____|
|
2000-09-20 18:32:08 -04:00
|
|
|
|
2002-06-19 08:37:02 -04:00
|
|
|
This directory is for libcurl programming examples. They are meant to show
|
|
|
|
some simple steps on how you can build your own application to take full
|
2000-09-20 18:32:08 -04:00
|
|
|
advantage of libcurl.
|
|
|
|
|
|
|
|
If you end up with other small but still useful example sources, please mail
|
|
|
|
them for submission in future packages and on the web site.
|
2001-02-19 08:38:29 -05:00
|
|
|
|
2004-11-24 11:11:35 -05:00
|
|
|
BUILDING
|
|
|
|
|
2001-03-27 04:10:53 -05:00
|
|
|
The Makefile.example is an example makefile that could be used to build these
|
|
|
|
examples. Just edit the file according to your system and requirements first.
|
|
|
|
|
2002-01-16 09:13:54 -05:00
|
|
|
Most examples should build fine using a command line like this:
|
|
|
|
|
2002-06-19 08:31:49 -04:00
|
|
|
$ `curl-config --cc --cflags --libs` -o example example.c
|
2002-01-16 09:13:54 -05:00
|
|
|
|
2002-08-14 19:01:14 -04:00
|
|
|
Some compilers don't like having the arguments in this order but instead
|
|
|
|
want you do reorganize them like:
|
|
|
|
|
|
|
|
$ `curl-config --cc` -o example example.c `curl-config --cflags --libs`
|
|
|
|
|
2002-06-19 08:37:02 -04:00
|
|
|
*PLEASE* do not use the curl.haxx.se site as a test target for your libcurl
|
2006-09-12 07:25:00 -04:00
|
|
|
applications/experiments. Even if some of the examples use that site as a URL
|
|
|
|
at some places, it doesn't mean that the URLs work or that we expect you to
|
|
|
|
actually torture our web site with your tests! Thanks.
|
2004-11-24 11:11:35 -05:00
|
|
|
|
|
|
|
EXAMPLES
|
|
|
|
|
|
|
|
anyauthput.c - HTTP PUT using "any" authentication method
|
2006-02-04 13:08:54 -05:00
|
|
|
cacertinmem.c - Use a built-in PEM certificate to retrieve a https page
|
|
|
|
cookie_interface.c - shows usage of simple cookie interface
|
2004-11-24 11:11:35 -05:00
|
|
|
curlgtk.c - download using a GTK progress bar
|
|
|
|
curlx.c - getting file info from the remote cert data
|
|
|
|
debug.c - showing how to use the debug callback
|
|
|
|
fileupload.c - uploading to a file:// URL
|
|
|
|
fopen.c - fopen() layer that supports opening URLs and files
|
|
|
|
ftpget.c - simple getting a file from FTP
|
|
|
|
ftpgetresp.c - get the response strings from the FTP server
|
2006-09-12 07:25:00 -04:00
|
|
|
ftpupload.c - upload a file to an FTP server
|
|
|
|
ftpuploadresume.c - resume an upload to an FTP server
|
2004-11-24 11:11:35 -05:00
|
|
|
getinfo.c - get the Content-Type from the recent transfer
|
|
|
|
getinmemory.c - download a file to memory only
|
2006-10-12 17:26:50 -04:00
|
|
|
ghiper.c - curl_multi_socket() using code with glib-2
|
|
|
|
hiperfifo.c - downloads all URLs written to the fifo, using
|
|
|
|
curl_multi_socket() and libevent
|
2007-09-13 16:36:52 -04:00
|
|
|
htmltidy.c - download a document and use libtidy to parse the HTML
|
2005-01-31 13:23:42 -05:00
|
|
|
htmltitle.cc - download a HTML file and extract the <title> tag from a HTML
|
|
|
|
page using libxml
|
2004-11-24 11:11:35 -05:00
|
|
|
http-post.c - HTTP POST
|
|
|
|
httpput.c - HTTP PUT a local file
|
|
|
|
https.c - simple HTTPS transfer
|
2012-01-21 01:44:47 -05:00
|
|
|
imap.c - simple IMAP transfer
|
2004-11-24 11:11:35 -05:00
|
|
|
multi-app.c - a multi-interface app
|
|
|
|
multi-debugcallback.c - a multi-interface app using the debug callback
|
|
|
|
multi-double.c - a multi-interface app doing two simultaneous transfers
|
|
|
|
multi-post.c - a multi-interface app doing a multipart formpost
|
|
|
|
multi-single.c - a multi-interface app getting a single file
|
2013-03-26 18:22:30 -04:00
|
|
|
multi-uv.c - a multi-interface app using libuv
|
2007-09-13 16:36:52 -04:00
|
|
|
multithread.c - an example using multi-treading transferring multiple files
|
2006-02-04 13:08:54 -05:00
|
|
|
opensslthreadlock.c - show how to do locking when using OpenSSL multi-threaded
|
2007-09-13 16:36:52 -04:00
|
|
|
persistant.c - request two URLs with a persistent connection
|
2011-12-28 10:33:17 -05:00
|
|
|
pop3s.c - POP3S transfer
|
|
|
|
pop3slist.c - POP3S LIST
|
2004-11-24 11:11:35 -05:00
|
|
|
post-callback.c - send a HTTP POST using a callback
|
|
|
|
postit2.c - send a HTTP multipart formpost
|
2006-09-12 07:25:00 -04:00
|
|
|
sampleconv.c - showing how a program on a non-ASCII platform would invoke
|
|
|
|
callbacks to do its own codeset conversions instead of using
|
|
|
|
the built-in iconv functions in libcurl
|
2004-11-24 11:11:35 -05:00
|
|
|
sepheaders.c - download headers to a separate file
|
|
|
|
simple.c - the most simple download a URL source
|
|
|
|
simplepost.c - HTTP POST
|
|
|
|
simplessl.c - HTTPS example with certificates many options set
|
2007-09-13 16:36:52 -04:00
|
|
|
synctime.c - Sync local time by extracting date from remote HTTP servers
|
2012-01-21 01:44:47 -05:00
|
|
|
url2file.c - download a document and store it in a file
|
2013-05-19 05:14:01 -04:00
|
|
|
xmlstream.c - Stream-parse a document using the streaming Expat parser
|
2006-09-12 07:25:00 -04:00
|
|
|
10-at-a-time.c - Download many files simultaneously, 10 at a time.
|