Heim > Backend-Entwicklung > PHP-Tutorial > PHP CURL simuliert den Ajax-Anfrageheader von JQuery, um Parameter hinzuzufügen, die in _SERVER angezeigt werden können

PHP CURL simuliert den Ajax-Anfrageheader von JQuery, um Parameter hinzuzufügen, die in _SERVER angezeigt werden können

WBOY
Freigeben: 2016-08-08 09:20:31
Original
1592 Leute haben es durchsucht

Szenario: Das Projekt verfügt über zwei verschiedene Möglichkeiten, Ajax-Anfragen und normale Anfragen zu verarbeiten, z. B. Fehlerbehandlung. Wenn beim Zugriff über den Browser ein Fehler auftritt, springen Sie zur DEBUG-Seite. Dies ist ein von mir selbst geschriebenes Framework, eine Stilkopie von ThinkPHP, da ich nur ein rein technischer Mensch bin. Entschuldigung - -): Zurück zum Betreff. Wenn es sich um eine Ajax-Anfrage handelt, muss ich die Informationen im JSON-Format zurückgeben. Dies ist für die Verarbeitung durch das Frontend (JS, IOS, ANDROID usw.) geeignet >


Dann benötigen wir auf der Serverseite ein Tag, um zu erkennen, ob es sich bei dieser Anfrage um eine Ajax-Anfrage oder eine normale Anfrage handelt. Ich beziehe mich hier auf die JQuery-Methode. Viele Leute wissen, dass js über die setRequestHeader-Methode des XMLHttpRequest-Objekts festgelegt werden kann. Wenn diese Anforderung jedoch vom Server gesendet wird, lautet die Verarbeitungsmethode wie folgt:


Auf diese Weise können Sie $_SERVER['

HTTP_X_REQUESTED_WITH

in PHP
<span>function </span><span>Get</span><span>(</span><span>$url</span><span>)</span>
Nach dem Login kopieren
<span><span>{</span></span>
Nach dem Login kopieren
'] verwenden 🎜>
<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>
Nach dem Login kopieren
<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>
Nach dem Login kopieren
<span><span>}</span></span>
Nach dem Login kopieren
Urheberrechtserklärung: Dieser Artikel ist ein Originalartikel des Bloggers und wurde vom Blogger nicht veröffentlicht. Eine Vervielfältigung ist mit Genehmigung des Eigentümers nicht gestattet. Das Obige stellt vor, wie PHP CURL den Ajax-Anforderungsheader von JQuery simuliert und Parameter hinzufügt, die in _SERVER angezeigt werden können, einschließlich des Inhalts. Ich hoffe, dass es für Freunde hilfreich ist, die an PHP-Tutorials interessiert sind.
<span>总结: 设置的头如: A-B-C, 在_SERVER变量中打印出来的key会变成 HTTP_A_B_C的形式.</span>
Nach dem Login kopieren
Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage