Skip to content
Snippets Groups Projects
README 3.65 KiB
Newer Older
  • Learn to ignore specific revisions
  •                                   _   _ ____  _
                                  ___| | | |  _ \| |
                                 / __| | | | |_) | |
                                | (__| |_| |  _ <| |___
                                 \___|\___/|_| \_\_____|
    
    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
    
    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.
    
    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.
    
    
    Most examples should build fine using a command line like this:
    
    
      $ `curl-config --cc --cflags --libs` -o example example.c
    
    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`
    
    
    *PLEASE* do not use the curl.haxx.se site as a test target for your libcurl
    
    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.
    
    
    EXAMPLES
    
    anyauthput.c   - HTTP PUT using "any" authentication method
    
    cacertinmem.c  - Use a built-in PEM certificate to retrieve a https page
    cookie_interface.c - shows usage of simple cookie interface
    
    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
    ftp3rdparty.c  - FTP 3rd party transfer
    ftpget.c       - simple getting a file from FTP
    ftpgetresp.c   - get the response strings from the FTP server
    
    ftpupload.c    - upload a file to an FTP server
    ftpuploadresume.c - resume an upload to an FTP server
    
    getinfo.c      - get the Content-Type from the recent transfer
    getinmemory.c  - download a file to memory only
    
    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
    
    Daniel Stenberg's avatar
    Daniel Stenberg committed
    htmltitle.cc   - download a HTML file and extract the <title> tag from a HTML
                     page using libxml
    
    http-post.c    - HTTP POST
    httpput.c      - HTTP PUT a local file
    https.c        - simple HTTPS transfer
    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
    multithread.c  - an example using multi-treading transfering multiple files
    
    opensslthreadlock.c - show how to do locking when using OpenSSL multi-threaded
    
    persistant.c   - request two URLs with a persistant connection
    post-callback.c - send a HTTP POST using a callback
    postit2.c      - send a HTTP multipart formpost
    
    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
    
    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
    
    synctime.c     - Sync local time by extracing date from remote HTTP servers
    
    10-at-a-time.c - Download many files simultaneously, 10 at a time.