>백엔드 개발 >PHP 튜토리얼 >cURL POST 요청에서 CURLOPT_POSTFIELDS 형식을 올바르게 지정하는 방법은 무엇입니까?

cURL POST 요청에서 CURLOPT_POSTFIELDS 형식을 올바르게 지정하는 방법은 무엇입니까?

Linda Hamilton
Linda Hamilton원래의
2024-12-25 07:08:09904검색

How to Properly Format CURLOPT_POSTFIELDS in cURL POST Requests?

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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.