> 백엔드 개발 > PHP 튜토리얼 > $_POST 및 $_GET가 비어 있을 때 PHP에서 요청 페이로드에 액세스하는 방법은 무엇입니까?

$_POST 및 $_GET가 비어 있을 때 PHP에서 요청 페이로드에 액세스하는 방법은 무엇입니까?

Mary-Kate Olsen
풀어 주다: 2024-11-10 16:00:04
원래의
378명이 탐색했습니다.

How to Access Request Payload in PHP When $_POST and $_GET Are Empty?

PHP에서 요청 페이로드에 액세스하는 방법

ExtJS 및 ajax 스토어를 사용하는 경우 요청 데이터가 POST 또는 GET 매개변수를 통하지 않고 HTTP 요청 본문으로 전송될 수 있습니다. 결과적으로 $_POST 및 $_GET는 비어 있습니다.

해결책

다음 PHP 코드를 사용하여 요청 본문에 액세스할 수 있습니다.

$request_body = file_get_contents('php://input');
로그인 후 복사

페이로드가 JSON에 있는 경우 형식인 경우 다음을 사용하여 디코딩할 수 있습니다.

$data = json_decode($request_body);
로그인 후 복사

이렇게 하면 $data 변수가 JSON 페이로드를 나타내는 배열로 채워집니다.

php://input의 배경

php://input은 요청 본문의 원시 데이터에 대한 액세스를 제공하는 읽기 전용 스트림 래퍼입니다. 이는 POST 요청에 특히 유용하며 메모리 효율성 및 특정 php.ini 지시문과의 독립성 측면에서 $HTTP_RAW_POST_DATA에 비해 이점을 제공합니다. enctype="multipart/form-data"를 사용하는 경우 php://input을 사용할 수 없습니다.

위 내용은 $_POST 및 $_GET가 비어 있을 때 PHP에서 요청 페이로드에 액세스하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿