manpagez: man pages & more
man CURLOPT_POSTFIELDSIZE(3)
Home | html | info | man
CURLOPT_POSTFIELDSIZE(3)   Library Functions Manual   CURLOPT_POSTFIELDSIZE(3)


NAME

       CURLOPT_POSTFIELDSIZE - size of POST data pointed to


SYNOPSIS

       #include <curl/curl.h>

       CURLcode curl_easy_setopt(CURL *handle, CURLOPT_POSTFIELDSIZE, long size);


DESCRIPTION

       If you want to post static data to the server without having libcurl do
       a strlen() to measure the data size, this option must be used. When
       this option is used you can post fully binary data, which otherwise is
       likely to fail. If this size is set to -1, libcurl uses strlen() to get
       the size or relies on the CURLOPT_READFUNCTION(3) (if used) to signal
       the end of data.

       If you post more than 2GB, use CURLOPT_POSTFIELDSIZE_LARGE(3).


DEFAULT

       -1


PROTOCOLS

       This functionality affects http only


EXAMPLE

       #include <string.h> /* for strlen */

       int main(void)
       {
         CURL *curl = curl_easy_init();
         if(curl) {
           const char *data = "data to send";

           curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");

           /* size of the POST data */
           curl_easy_setopt(curl, CURLOPT_POSTFIELDSIZE, (long) strlen(data));

           curl_easy_setopt(curl, CURLOPT_POSTFIELDS, data);

           curl_easy_perform(curl);
         }
       }


AVAILABILITY

       Added in curl 7.2


RETURN VALUE

       Returns CURLE_OK if HTTP is supported, and CURLE_UNKNOWN_OPTION if not.


SEE ALSO

       CURLOPT_POSTFIELDS(3), CURLOPT_POSTFIELDSIZE_LARGE(3)

libcurl                           2024-08-05          CURLOPT_POSTFIELDSIZE(3)

curl 8.9.1 - Generated Mon Aug 12 16:47:03 CDT 2024
© manpagez.com 2000-2024
Individual documents may contain additional copyright information.