libcurl post 예제

libcurl post 예제

다음은 CURL_formadd MIME API 시퀀스에 대한 호출의 몇 가지 예입니다: POST 요청을 수행할 때 libcurl은 이 헤더를 “100-continue”로 설정하여 게시물의 데이터 부분을 보내기 전에 서버에 “OK” 메시지를 요청합니다. POSTed 데이터 양이 “작음”으로 간주되는 경우 libcurl은 이 헤더를 사용하지 않습니다. 사용자가 개인 리소스를 가리킬 수 있는 임의URL을 지정할 수 있는 경우 리디렉션되지 않은 URL과 관련된 모든 악의적인 시나리오도 리디렉션되지 않은 URL에도 적용됩니다. 예를 들어 번역 서비스를 제공하는 웹 앱은 file://localhost/etc/passwd 번역하고 결과를 표시할 수 있습니다. 앱은 CURLOPT_PROTOCOLS 옵션과 리디렉션에 대한 유사한 완화 기술을 통해 이에 대해 완화할 수 있습니다. 다중 파트 폼포스트는 MIME 스타일 구분 기호 및 헤더를 사용하는 부품 체인입니다. 즉, 이러한 개별 부품 각각은 개별 콘텐츠 유형, 크기 등을 설명하는 몇 가지 헤더 집합을 얻습니다. 응용 프로그램에서 이 폼포스트를 더욱 쉽게 제작할 수 있도록 libcurl을 사용하면 사용자 지정 헤더 세트를 이러한 개별 양식 부분에 제공할 수 있습니다. 물론 원하는 만큼 많은 부분에 헤더를 제공할 수 있지만, 이 작은 예제에서는 포스트 핸들에 헤더를 추가할 때 헤더를 하나의 특정 부분으로 설정하는 방법을 보여 줄 것입니다. 콜백을 변경합니다. 예를 들어 CURLOPT_HEADERDATA를 설정하여 일반 쓰기 콜백에 전달하는 다른 포인터를 설정할 수 있습니다. PUT 요청은 POST 요청과 동일한 형식을 따릅니다. 연락처 ID가 1이고 이메일 주소가 “george.washington@america.com”인 경우 연락처를 업데이트하여 연락처의 비즈니스 전화 번호를 변경하는 방법을 살펴보겠습니다.

다음 예제에서는 일반 텍스트 내용이 있는 두 개의 간단한 텍스트 부분을 설정한 다음 이진 내용이 있는 파일을 설정하고 모든 것을 업로드합니다. 첫 번째 버전은 태그를 사용하는 대부분의 HTML 페이지가 사용하는 가장 일반적인 버전인 간단한 POST입니다. 우리는 데이터에 대한 포인터를 제공하고 libcurl에게 모든 것을 원격 사이트에 게시하도록 지시합니다 : 어떤 것들은 쿠키와 같은 멀티 핸들 내에서 자동으로 공유되지 않으므로 공유 인터페이스와 공유 할 수있는 유일한 방법입니다.

Share this post