diff options
| author | Daniel Stenberg <daniel@haxx.se> | 2000-09-20 22:32:08 +0000 | 
|---|---|---|
| committer | Daniel Stenberg <daniel@haxx.se> | 2000-09-20 22:32:08 +0000 | 
| commit | 35aa363587f8169f9b1ceec22f5e8f8ebd9da91e (patch) | |
| tree | 625d0d9c644eac798d0d15d27ee15780e70061a5 /docs/examples | |
| parent | 7eafb0f3256d7842fc808268a72105c93cdcdfc0 (diff) | |
new libcurl example code stuff
Diffstat (limited to 'docs/examples')
| -rw-r--r-- | docs/examples/README | 8 | ||||
| -rw-r--r-- | docs/examples/sepheaders.c | 63 | ||||
| -rw-r--r-- | docs/examples/simple.c | 26 | 
3 files changed, 97 insertions, 0 deletions
diff --git a/docs/examples/README b/docs/examples/README new file mode 100644 index 000000000..09e1fa855 --- /dev/null +++ b/docs/examples/README @@ -0,0 +1,8 @@ +EXAMPLES + +This directory is for tiny 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. diff --git a/docs/examples/sepheaders.c b/docs/examples/sepheaders.c new file mode 100644 index 000000000..724e14157 --- /dev/null +++ b/docs/examples/sepheaders.c @@ -0,0 +1,63 @@ +#include <stdio.h> +#include <stdlib.h> +#include <unistd.h> + +#include <curl/curl.h> +#include <curl/types.h> +#include <curl/easy.h> + +size_t  write_data(void *ptr, size_t size, size_t nmemb, FILE *stream) +{ +  written = fwrite(ptr,size,nmemb,outfile); +  return written; +} + +int main(int argc, char **argv) +{ +  CURL *curl_handle; +  char *headerfilename = "head.out"; +  FILE *headerfile; +  char *bodyfilename = "body.out"; +  FILE *bodyfile; + +  /* init the curl session */ +  curl_handle = curl_easy_init(); + +  /* set URL to get */ +  curl_easy_setopt(curl_handle, CURLOPT_URL, "http://curl.haxx.se"); + +  /* no progress meter please */ +  curl_easy_setopt(curl_handle, CURLOPT_NOPROGRESS, 1); + +  /* shut up completely */ +  curl_easy_setopt(curl_handle, CURLOPT_MUTE, 1); + +  /* send all data to this function  */ +  curl_easy_setopt(curl_handle, CURLOPT_WRITEFUNCTION, write_data); + +  /* open the files */ +  headerfile = fopen(headerfilename,"w"); +  if (headerfile == NULL) { +    curl_easy_cleanup(curl_handle); +    return -1; +  } +  bodyfile = fopen(bodyfilename,"w"); +  if (bodyfile == NULL) { +    curl_easy_cleanup(curl_handle); +    return -1; +  } + +  /* we want the headers to this file handle */ +  curl_easy_setopt(curl_handle,   CURLOPT_WRITEHEADER ,headerfile); + +  /* get it! */ +  curl_easy_perform(curl_handle); + +  /* close the header file */ +  fclose(headerfile); + +  /* cleanup curl stuff */ +  curl_easy_cleanup(curl_handle); + +  return 0; +} diff --git a/docs/examples/simple.c b/docs/examples/simple.c new file mode 100644 index 000000000..e6138c4e1 --- /dev/null +++ b/docs/examples/simple.c @@ -0,0 +1,26 @@ +#include <stdio.h> + +#include <curl/curl.h> +#include <curl/types.h> +#include <curl/easy.h> + +int main(int argc, char **argv) +{ +  CURL *curl; +  CURLcode res; +  FILE *headerfile; + +  headerfile = fopen("dumpit", "w"); + +  curl = curl_easy_init(); +  if(curl) { +    /* what call to write: */ +    curl_easy_setopt(curl, CURLOPT_URL, "curl.haxx.se"); +    curl_easy_setopt(curl, CURLOPT_WRITEHEADER, headerfile); +    res = curl_easy_perform(curl); + +    /* always cleanup */ +    curl_easy_cleanup(curl); +  } +  return 0; +}  | 
