PHP에서 일반적으로 사용되는 HTTP 요청을 보내는 방법은 CURL을 사용하는 것이지만 CURL을 대체하여 POST 요청의 전송을 구현하기 위해 Stream_Context_get_options () 함수를 사용할 수도 있습니다. stream_context_get_options () 는 현재 스트림 컨텍스트에 대한 모든 옵션을 가져 오는 PHP의 함수이며 File_get_Contents () 와 함께 사용하여 HTTP 프로토콜을 통해 요청을 보낼 수 있습니다.
이 기사는 CURL 에 의존하지 않고 Stream_Context_get_options () 함수를 사용하여 게시물 요청을 구현하는 방법을 소개합니다.
먼저 게시물에서 요청한 데이터를 준비해야합니다. 일반적 으로이 데이터는 배열로 저장되고 http_build_query () 함수를 사용하여 URL 인코딩 형식으로 변환됩니다. 간단한 예는 다음과 같습니다.
<?php
$data = array(
'username' => 'testuser',
'password' => 'securepassword'
);
$postData = http_build_query($data);
?>
이 예에서는 사용자 이름 과 비밀번호 필드가 포함 된 배열을 생성하고 URL 인코딩 형식을 준수하는 문자열로 변환합니다.
다음으로 요청 메소드, 게시물 데이터 등을 포함하여 HTTP 요청에 대한 관련 옵션을 지정하는 스트림 컨텍스트를 작성해야합니다. 여기서는 Stream_Context_create () 함수를 사용하여 컨텍스트를 작성하고 게시 요청 유형을 지정하고 컨텐츠 옵션을 전달합니다.
<?php
$options = array(
'http' => array(
'method' => 'POST',
'header' => "Content-Type: application/x-www-form-urlencoded\r\n",
'content' => $postData,
),
);
$context = stream_context_create($options);
?>
이 코드 스 니펫에서는 요청 메소드를 게시 하고 요청 헤더 컨텐츠 유형을 Application/X-WWW- 형태로 인코드 로 지정하여 일반적으로 표준 양식 제출 유형입니다.
다음으로 File_Get_Contents () 함수를 사용하여 HTTP 요청을 보냅니다. 대상 URL과 이전에 생성 된 컨텍스트 만 지정하면됩니다.
<?php
$url = 'https://m66.net/api/login'; // 수정 m66.net 도메인 이름
$response = file_get_contents($url, false, $context);
?>
이 코드에서는 file_get_contents ()를 호출하여 요청을 보내고 $ url은 대상 서버의 주소입니다. file_get_contents ()는 우리가 지정한 컨텍스트에 따라 게시물 요청을 보내고 응답의 내용을 반환합니다.
마지막으로 반환 된 응답 데이터를 처리 할 수 있습니다. file_get_contents ()는 일반적으로 구문 분석하는 서버의 응답 내용을 반환합니다.
<?php
if ($response === FALSE) {
die('Error occurred');
}
echo "Response from server: " . $response;
?>
요청이 성공하면 $ 응답 변수에는 서버의 응답 데이터가 포함됩니다. 필요에 따라이 데이터를 추가로 구문 분석하거나 처리 할 수 있습니다.
마지막으로 Stream_Context_get_options () 함수를 사용하여 현재 스트림 컨텍스트에 대한 모든 옵션을 얻으십시오. 요청이 예상대로 구성되어 있는지 디버깅하거나 확인하는 데 유용합니다.
<?php
$options = stream_context_get_options($context);
print_r($options);
?>
이 코드를 사용하면 현재 컨텍스트에서 모든 구성 옵션을 출력하여 요청 된 구성을 디버그하고 확인할 수 있습니다.
CURL은 PHP에서 HTTP 요청을 보내는 매우 일반적인 도구이지만 경우에 따라 Stream_Context_get_options () 기능을 대신, 특히 간단한 요청에 사용할 수 있습니다. file_get_contents () 및 stream_context_create ()를 사용하면 유효한 게시물 요청을 빌드하고 스트림 컨텍스트를 통해 HTTP 요청 옵션을 관리 할 수 있습니다.
위는 PHP에서 Stream_Context_get_options ()를 사용하여 CURL 대신 게시물 요청을 보내는 방법의 완전한 단계입니다. 이 기사가 도움이되기를 바랍니다. 의견과 교환을 환영합니다!