413236-3158 / 3079-5158
Subaru, Honda, Suzuki, Toyota, Mitsubishi, Nissan

c++ libcurl 예제

기본, 다이제스트, NTLM, 협상 (SPNEGO): 이 글을 쓰는 시점에서, libcurl을 사용하도록 구축 할 수 있습니다. CURLOPT_HTTPAUTH와 함께 사용할 libcurl을 말할 수 있습니다: 이 문서는 libcurl을 사용하는 소스 코드를 작성하는 사람으로 `사용자`를 참조합니다. 그것은 아마도 당신 또는 당신의 위치에있는 사람이 될 것입니다. 일반적으로 `프로그램`이라고 하는 것은 전송을 위해 libcurl을 사용하는 수집된 소스 코드입니다. 이 프로그램은 libcurl 외부이며 libcurl은 프로그램 외부에 있습니다. 위의 간단한 예제에서는 HTTP POST 작업이 필요한 대부분의 경우를 다루지만 다중 부분 폼포스트를 수행하지는 않습니다. 다중 부분 폼포스트는 (아마도 큰) 이진 데이터를 게시하는 더 나은 방법으로 도입되었으며 RFC 1867(RFC 2388에서 업데이트)에 처음 문서화되었습니다. 각 부품은 단일 데이터 단위인 부품 체인에 의해 빌드되기 때문에 다중 부품이라고 합니다. 각 부품에는 고유한 이름과 내용이 있습니다. 실제로 위에서 설명한 일반 libcurl POST 지원으로 다중 부분 폼포스트를 만들고 게시할 수 있지만 폼포스트를 직접 작성하고 libcurl을 제공해야 합니다.

이를 쉽게 하기 위해 libcurl은 여러 기능으로 구성된 MIME API를 제공합니다. 함수 curl_mime_init은 다중 부분 본문을 만듭니다. 그런 다음 curl_mime_addpart를 사용하여 여러 부분 본체에 새 부품을 추가할 수 있습니다. 일부에 대한 세 가지 가능한 데이터 원본이 있습니다: curl_mime_data를 사용하는 메모리, curl_mime_filedata를 사용하는 파일 및 curl_mime_data_cb를 사용하는 사용자 정의 데이터 읽기 콜백. curl_mime_name은 부품(예: 양식 필드) 이름을 설정하고 curl_mime_filename은 원격 파일 이름을 채웁니다. curl_mime_type을 사용하면 MIME 유형의 부품을 알 수 있으며 curl_mime_header를 사용하면 부품의 헤더를 정의할 수 있습니다. 다중 부분 본체가 더 이상 필요하지 않은 경우 curl_mime_free를 사용하여 바디를 파괴할 수 있습니다. 그리고 SSL이 지원되는 경우, 키워드 `SSL`은 다른 libcurls에 대해 켜거나 끌 수있는 몇 가지 다른 기능과 함께 stdout에 작성됩니다. FTP 사용자 이름과 암호를 저장하는 유닉스 “표준”방법, 즉 $HOME /.netrc 파일에 오랜 시간이 있습니다. 파일은 일반 텍스트에 암호를 포함할 수 있으므로 사용자만 읽을 수 있도록 비공개로 만들어야 합니다(“보안 고려 사항” 장 참조). libcurl은 특정 호스트에 사용할 사용자 이름과 암호 집합을 파악하기 위해이 파일을 사용할 수있는 기능을 가지고 있습니다. libcurl은 일반적인 기능의 확장으로 HTTP와 같은 FTP가 아닌 프로토콜에 대해서도 이 파일을 지원합니다.

컬이 파일을 사용하려면 CURLOPT_NETRC 옵션을 사용하십시오: curl_easy_perform는 원격 사이트에 연결하고 필요한 명령을 수행하고 전송을 받습니다.

Comments are closed.