<span></span> 시나리오: 프로젝트에는 오류 처리 등 일반 요청과 Ajax 요청을 처리하는 두 가지 방법이 있습니다. 브라우저를 통해 접속할 때 오류가 발생하면 아래와 같이 DEBUG 페이지로 이동합니다. 이것은 내가 작성한 프레임워크이며 ThinkPHP의 스타일 카피입니다. 죄송합니다. - -):
OK 다시 주제로 돌아가서 Ajax 요청인 경우 JSON 형식으로 정보를 반환해야 합니다. 이는 프런트 엔드(JS, IOS, ANDROID 등)에서 처리하는 데 편리합니다. 예:
그런 다음 서버 측에서 이 요청이 Ajax 요청인지 일반 요청인지 식별하는 데 도움이 되는 태그가 필요합니다. 여기서는 JQuery 메서드를 참조합니다. 많은 사람들이 XMLHttpRequest 객체의 setRequestHeader 메소드를 통해 js를 설정할 수 있다는 것을 알고 있습니다. 그러나 이 요청이 서버에서 이루어지면 처리 방법은 다음과 같습니다.
<span>function </span><span>Get</span><span>(</span><span>$url</span><span>)</span>
<span><span>{</span></span>
<span><span><span></span>$ch </span><span>= </span><span><em>curl_init</em></span><span>(); </span><span><em><span></span>curl_setopt</em></span><span>(</span><span>$ch</span><span>, </span><span><em>CURLOPT_URL</em></span><span>, </span><span>$url</span><span>); </span><span><em><span></span>curl_setopt</em></span><span>(</span><span>$ch</span><span>, </span><span><em>CURLOPT_HEADER</em></span><span>, </span><span>0</span><span>); </span><span><em><span></span>curl_setopt</em></span><span>(</span><span>$ch</span><span>, </span><span><em>CURLOPT_RETURNTRANSFER</em></span><span>, </span><span>1</span><span>);</span></span>
<span></span><pre class="brush:php;toolbar:false"><span><span><span></span>$HEADER </span><span>= </span><span>array</span><span>( </span><span><span></span></span><span>'X-REQUESTED-WITH: XMLHTTPREQUEST' </span><span><span></span>); </span><span><em><span></span>curl_setopt</em></span><span>(</span><span>$ch</span><span>, </span><span><em>CURLOPT_HTTPHEADER</em></span><span>, </span><span>$HEADER</span><span>); </span><span><span></span>$return </span><span>= </span><span><em>curl_exec</em></span><span>(</span><span>$ch</span><span>); </span><span><em><span></span>curl_close</em></span><span>(</span><span>$ch</span><span>); </span><span></span><span><span></span>return </span><span>$return</span><span>;</span></span>
<span><span>}</span></span>
<span>总结: 设置的头如: A-B-C, 在_SERVER变量中打印出来的key会变成 HTTP_A_B_C的形式.</span>
<span></span>
위 내용은 PHP CURL이 JQuery의 Ajax 요청 헤더를 시뮬레이션하고 내용을 포함하여 _SERVER에 표시할 수 있는 매개변수를 추가하는 방법을 소개합니다. PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.