
However, this is a blocking call not merely synchronous: the entire application blocks for the duration of the transfer. Depending on your specific requirements, you can do it in one of several ways. URL, port, username and/or password, cookies, etc.) you are ready to begin the transfer. Once all the desired options have been set (e.g. Options will persist until they are overwritten or reset. After creating a new EasyHandle instance, you can set various options for the handle by calling the SetOption method with the desired cURL option number and its new value. LibcURL uses several different handle types or equivalents: Handle TypeĪ persistent collection of sockets, caches, and options which together will be used when libcURL is told to perform a transfer.Ī set of one or more curl_easy handles whose transfers will be performed simultaneously.Ī set of one or more curl_easy handles that will share SSL session data, DNS caches, and/or HTTP cookies.Īn HTTP form which libcURL will encode as multipart/form-data.Ī MIME message (HTTP form, email message, etc.) (libcURL 7.56.0 or later)Īn interface to libcurl's URL parser (libcURL 7.62.0 or later)Įvery transfer is associated with an EasyHandle. These handle-managing classes all descend from a common ancestor, the abstract cURLHandle class. Refer to the examples below for demonstrations of cURLClient.įor more thorough documentation of individual classes and methods refer to the wiki.Įach libcURL handle or handle equivalent is managed by an object class. It is strongly recommended that you familiarize yourself with libcURL, as this project preserves the semantics of libcURL's API in an object-oriented, Xojo-flavored wrapper.įor a simplified client interface that is appropriate for most types of transfers, you should use the cURLClient class. †= feature might not be available at run-time due to a build-time decision of the installed version of libcURL Synopsis
#Xojo generic object full
A consistent, high-level API over the full range of libcURL's features.


#Xojo generic object download
Download or upload directly to or from a file, MemoryBlock, Xojo socket, or your own custom class. Stream-oriented, using Xojo's built-in Readable and Writeable interfaces.Full support for HTTP, SOCKS4, SOCKS4A, SOCKS5, and SOCKS5_HOSTNAME proxy servers.Transparent support for RB/Xojo threads.


