Ever needed the source code corresponding to a curl command line? Fortunately, the developers were nice to add an option to generate the C++ source code.
curl command has an option --libcurl FILE to generate the source code for any http request. This basically saves the code in the specified file and executes the actual http request. The most often used curl request is to get repo to download Android's source code.
curl https://storage.googleapis.com/git-repo-downloads/repo
This along with --libcurl generates this nice helper function,
curl https://storage.googleapis.com/git-repo-downloads/repo --libcurl curl.cpp
curl command has an option --libcurl FILE to generate the source code for any http request. This basically saves the code in the specified file and executes the actual http request. The most often used curl request is to get repo to download Android's source code.
curl https://storage.googleapis.com/git-repo-downloads/repo
This along with --libcurl generates this nice helper function,
curl https://storage.googleapis.com/git-repo-downloads/repo --libcurl curl.cpp
/********* Sample code generated by the curl command line tool **********
* All curl_easy_setopt() options are documented at:
* http://curl.haxx.se/libcurl/c/curl_easy_setopt.html
************************************************************************/
#include <curl/curl.h>
int main(int argc, char *argv[])
{
CURLcode ret;
CURL *hnd;
hnd = curl_easy_init();
curl_easy_setopt(hnd, CURLOPT_URL, "https://storage.googleapis.com/git-repo-downloads/repo");
curl_easy_setopt(hnd, CURLOPT_NOPROGRESS, 1L);
curl_easy_setopt(hnd, CURLOPT_USERAGENT, "curl/7.37.1");
curl_easy_setopt(hnd, CURLOPT_MAXREDIRS, 50L);
curl_easy_setopt(hnd, CURLOPT_TCP_KEEPALIVE, 1L);
/* Here is a list of options the curl code used that cannot get generated
as source easily. You may select to either not use them or implement
them yourself.
CURLOPT_WRITEDATA set to a objectpointer
CURLOPT_WRITEFUNCTION set to a functionpointer
CURLOPT_READDATA set to a objectpointer
CURLOPT_READFUNCTION set to a functionpointer
CURLOPT_SEEKDATA set to a objectpointer
CURLOPT_SEEKFUNCTION set to a functionpointer
CURLOPT_ERRORBUFFER set to a objectpointer
CURLOPT_STDERR set to a objectpointer
CURLOPT_HEADERFUNCTION set to a functionpointer
CURLOPT_HEADERDATA set to a objectpointer
*/
ret = curl_easy_perform(hnd);
curl_easy_cleanup(hnd);
hnd = NULL;
return (int)ret;
}
/**** End of sample code ****/
No comments:
Post a Comment