PHP에서 AJAX 요청을 안전하게 감지
수신 요청이 AJAX 요청인지 확인하는 것은 서버측 처리에 매우 중요합니다. GET 매개변수 또는 헤더와 같은 방법은 쉽게 악용될 수 있지만 보다 안전한 접근 방식을 사용할 수 있습니다.
해결책: HTTP_X_REQUESTED_WITH 헤더 확인
HTTP_X_REQUESTED_WITH 헤더는 전송되는 표준 헤더입니다. AJAX 요청으로. 이 헤더는 일반적으로 "XMLHttpRequest" 또는 "xmlhttprequest"로 설정됩니다. 이 헤더를 확인하면 AJAX 요청을 확실하게 식별할 수 있습니다.
<code class="php">if(strtolower($_SERVER['HTTP_X_REQUESTED_WITH'] ?? '') === 'xmlhttprequest') { // We can assume that the request was made with AJAX }</code>
사용 예
PHP 스크립트 mypage.php를 고려하세요.
<code class="php"><?php if(strtolower($_SERVER['HTTP_X_REQUESTED_WITH'] ?? '') === 'xmlhttprequest') { // Process AJAX request } else { // Not an AJAX request } ?></code>
이 스크립트는 HTTP_X_REQUESTED_WITH 헤더가 존재하고 "XMLHttpRequest"로 설정되어 있는지 확인합니다. 그렇다면 요청이 AJAX 요청이라고 가정하고 그에 따라 처리를 진행합니다. 그렇지 않으면 요청을 AJAX가 아닌 요청으로 처리합니다.
장점
AJAX 요청에 대해 브라우저에서 HTTP_X_REQUESTED_WITH 헤더를 자동으로 전송하므로 이 방법은 안전합니다. 공격자가 쉽게 위조할 수 없습니다. 또한 대부분의 최신 브라우저 및 서버 플랫폼에서 지원됩니다.
위 내용은 PHP에서 AJAX 요청을 안전하게 식별하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!