POST 요청을 위한 Curl의 CURLOPT_POSTFIELDS
curl을 사용하여 POST 요청을 수행하고 CURLOPT_POSTFIELDS 옵션을 지정할 때 다음 사항을 고려하는 것이 중요합니다. 적절한 형식. 예를 들어 "first"와 "last" 필드 두 개를 게시하는 것을 고려해 보세요.
"first=John&last=Smith"
문자열 형식 지정
문자열을 POST 데이터로 보내는 경우 적절한 문자 인코딩을 보장하기 위해 URL로 인코딩되어야 합니다. 다음 코드는 이를 보여줍니다.
$data = urlencode("first=John&last=Smith");
배열 형식 지정
그러나 POST 데이터가 배열인 경우 "키 => 값"을 따라야 합니다. 형식:
$data = [ 'first' => 'John', 'last' => 'Smith' ];
이 경우 컬은 자동으로 Content-Type 헤더를 다음으로 설정합니다. "multipart/form-data".
Content-Type 헤더
더 나은 호환성을 위해 Content-Type 헤더를 명시적으로 설정하는 것이 좋습니다. 예를 들어 "application/json"으로 설정하려면:
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']);
http_build_query() 사용
또는 쿼리 문자열을 수동으로 작성하는 대신 PHP의 http_build_query () 기능을 사용할 수 있습니다:
$query = http_build_query($data, '', '&'); curl_setopt($ch, CURLOPT_POSTFIELDS, $query);
이 기능 URL 인코딩 및 적절한 키=값 형식을 원활하게 처리합니다.
위 내용은 cURL POST 요청에서 CURLOPT_POSTFIELDS 형식을 올바르게 지정하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!