static void clientIoGet(const char* dntoken) { const char text[] = "Hello, world!"; char* url = Qiniu_String_Concat("http://", domain, "/", key, "?token=", dntoken, NULL); long code, httpCode; CURL* curl = curl_easy_init(); Qiniu_Buffer resp; Qiniu_Buffer respHeader; Qiniu_Buffer_Init(&resp, 1024); Qiniu_Buffer_Init(&respHeader, 1024); printf("url: %s\n", url); curl_easy_setopt(curl, CURLOPT_URL, url); curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, Qiniu_Buffer_Fwrite); curl_easy_setopt(curl, CURLOPT_WRITEDATA, &resp); curl_easy_setopt(curl, CURLOPT_HEADERFUNCTION, Qiniu_Buffer_Fwrite); curl_easy_setopt(curl, CURLOPT_HEADERDATA, &respHeader); code = curl_easy_perform(curl); printf("\n%s", Qiniu_Buffer_CStr(&respHeader)); CU_ASSERT(code == 0); curl_easy_getinfo(curl, CURLINFO_RESPONSE_CODE, &httpCode); CU_ASSERT(httpCode == 200); CU_ASSERT_STRING_EQUAL(Qiniu_Buffer_CStr(&resp), text); curl_easy_cleanup(curl); }
void Qiniu_Client_InitEx(Qiniu_Client* self, Qiniu_Auth auth, size_t bufSize) { self->curl = curl_easy_init(); self->root = NULL; self->auth = auth; Qiniu_Buffer_Init(&self->b, bufSize); Qiniu_Buffer_Init(&self->respHeader, bufSize); }
void Qiniu_Client_InitEx(Qiniu_Client* self, Qiniu_Auth auth, size_t bufSize) { self->curl = curl_easy_init(); self->root = NULL; self->auth = auth; Qiniu_Buffer_Init(&self->b, bufSize); Qiniu_Buffer_Init(&self->respHeader, bufSize); self->boundNic = NULL; self->lowSpeedLimit = 0; self->lowSpeedTime = 0; }
static void clientIoGet(const char* url) { Qiniu_Eq eq; Qiniu_Seq seq; Qiniu_Int64 fsize = testFsize; Qiniu_Reader in = Qiniu_SeqReader(&seq, (size_t)fsize, 10, '0', 0); Qiniu_Writer w = Qiniu_EqWriter(&eq, in); long code, httpCode; CURL* curl = curl_easy_init(); Qiniu_Buffer respHeader; Qiniu_Buffer_Init(&respHeader, 1024); printf("url: %s\n", url); curl_easy_setopt(curl, CURLOPT_URL, url); curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, w.Write); curl_easy_setopt(curl, CURLOPT_WRITEDATA, w.self); curl_easy_setopt(curl, CURLOPT_HEADERFUNCTION, Qiniu_Buffer_Fwrite); curl_easy_setopt(curl, CURLOPT_HEADERDATA, &respHeader); code = curl_easy_perform(curl); printf("\n%s", Qiniu_Buffer_CStr(&respHeader)); printf("\ncurl.code: %d, eq.result: %d\n", (int)code, eq.result); CU_ASSERT(code == 0); curl_easy_getinfo(curl, CURLINFO_RESPONSE_CODE, &httpCode); CU_ASSERT(httpCode == 200); CU_ASSERT(Qiniu_Is(&eq)); curl_easy_cleanup(curl); }