2000-05-22 13:35:35 -04:00
|
|
|
_ _ _ _
|
|
|
|
| (_) |__ ___ _ _ _ __| |
|
|
|
|
| | | '_ \ / __| | | | '__| |
|
|
|
|
| | | |_) | (__| |_| | | | |
|
|
|
|
|_|_|_.__/ \___|\__,_|_| |_|
|
|
|
|
|
|
|
|
|
2000-05-22 15:02:54 -04:00
|
|
|
How To Use Libcurl In Your Program
|
|
|
|
|
|
|
|
Interfaces
|
|
|
|
|
|
|
|
libcurl currently offers two different interfaces to the URL transfer
|
|
|
|
engine. They can be seen as one low-level and one high-level, in the sense
|
|
|
|
that the low-level one will allow you to deal with a lot more details but on
|
|
|
|
the other hand not offer as many fancy features (such as Location:
|
|
|
|
following). The high-level interface is supposed to be a built-in
|
|
|
|
implementation of the low-level interface. You will not be able to mix
|
|
|
|
function calls from the different layers.
|
|
|
|
|
|
|
|
As we currently ONLY support the high-level interface, the so called easy
|
|
|
|
interface, I will not attempt to describe any low-level functions at this
|
|
|
|
point.
|
|
|
|
|
|
|
|
Function descriptions
|
|
|
|
|
|
|
|
The interface is meant to be very simple for very simple
|
|
|
|
implementations. Thus, we have minimized the number of entries.
|
|
|
|
|
|
|
|
Main Operations
|
|
|
|
|
|
|
|
You INIT the lib
|
|
|
|
|
|
|
|
You SET OPTIONS you want the lib to use.
|
|
|
|
|
|
|
|
You tell the lib to PERFORM the transfer.
|
|
|
|
|
|
|
|
You CLEAN UP the lib
|
|
|
|
|
|
|
|
done.
|
|
|
|
|
|
|
|
See the separate man pages for the libcurl functions for details.
|
|
|
|
|
|
|
|
|
|
|
|
CURLcode curl_easy_setopt(CURL *curl, CURLoption option, ...);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
CURLcode curl_easy_perform(CURL *curl);
|
|
|
|
void curl_easy_cleanup(CURL *curl);
|