libcurl Easy handle

Easy handle

먼저 전송에 대한 핸들인 “이지 핸들”을 생성합니다.

1
CURL *easy_handle = curl_easy_init();

그런 다음 해당 핸들에서 옵션을 설정하여 예정된 전송을 제어합니다. 이 예에서는 URL을 설정합니다.

1
2
/* set URL to operate on */
res = curl_easy_setopt(easy_handle, CURLOPT_URL, "http://example.com/");

curl_easy_setopt()CURLE_OK를 반환하면 옵션이 제대로 저장되었음을 알 수 있습니다.

쉬운 핸들을 만들고 옵션을 설정해도 전송이 발생하지 않으며 일반적으로 전송이 실제로 발생했을 때 나중에 사용하고자 하는 libcurl을 저장하는 것 외에는 더 많은 일이 발생하지 않습니다. 입력의 많은 구문 검사 및 유효성 검사도 연기될 수 있으므로 curl_easy_setopt가 불평하지 않았다고 해서 입력이 정확하고 유효하다는 의미는 아닙니다. 나중에 오류가 반환될 수 있습니다.

별도 섹션에서 쉬운 옵션에 대해 자세히 읽어보세요.

쉬운 핸들로 옵션 설정을 마치면 실제 전송을 시작할 수 있습니다.

전송의 실제 수행은 애플리케이션에서 원하는 동작의 종류와 libcurl이 아키텍처에 가장 잘 통합되는 방식에 따라 다양한 메서드와 함수 호출을 사용하여 수행할 수 있습니다. 이에 대해서는 이 장의 뒷부분에서 자세히 설명합니다.

전송이 진행되는 동안 libcurl은 콜백이라고 하는 지정된 함수를 호출하여 데이터를 전달하고 데이터를 읽고 다양한 작업을 수행합니다.

전송이 완료된 후 성공 여부를 알 수 있으며 libcurl이 전송 중에 수집한 통계 및 기타 정보를 easy 핸들에서 추출할 수 있습니다. 전송 후 정보를 참조하십시오.

재사용!

쉬운 핸들은 재사용할 수 있도록 설계되었습니다. 이지핸들로 한번의 이체를 마치면 바로 다음 이체에 다시 사용할 수 있습니다. 이를 통해 얻을 수 있는 이득이 많다.

모든 옵션은 “고정”입니다. 다시 변경하거나 핸들에서 curl_easy_reset()을 호출할 때까지 핸들에 설정된 상태로 유지됩니다. 동일한 핸들로 두 번째 전송을 수행하면 동일한 옵션이 사용됩니다.

공유하기