Rumah pembangunan bahagian belakang tutorial php PHP CURL模拟JQuery的Ajax请求头添加可显示在_SERVER中的参数

PHP CURL模拟JQuery的Ajax请求头添加可显示在_SERVER中的参数

Aug 08, 2016 am 09:20 AM
ajax curl server

<span></span>场景: 项目对ajax请求和普通的请求有两种不同的处理方式, 比如错误处理这块, 通过浏览器访问出错时, 跳转到DEBUG页面. 如下图(这个是自己写的框架, 样式Copy的ThinkPHP, 因本人只是个纯技术. Sorry - -):


OK 言归正传. 如果是Ajax请求的话, 我这边需要以 JSON格式去返回信息. 方便前端(JS, IOS, ANDROID等)去处理. 如:


那么, 在服务器端我们就需要一个标记去帮助我们辨别这个请求是ajax请求还是普通的请求. 我这边参考的是 JQuery 的方式, 很多人都知道, js可以通过XMLHttpRequest对象的setRequestHeader方法去设置. 但是如果这个请求是由服务器通过CURL去发出呢. 处理方式如下:

<span>function </span><span>Get</span><span>(</span><span>$url</span><span>)</span>
Salin selepas log masuk
<span><span>{</span></span>
Salin selepas log masuk
<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>
Salin selepas log masuk
<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>
Salin selepas log masuk
<span><span>}</span></span>
Salin selepas log masuk
这样, 可以通过PHP 中的 $_SERVER['HTTP_X_REQUESTED_WITH']; 去获取了.
<span>总结: 设置的头如: A-B-C, 在_SERVER变量中打印出来的key会变成 HTTP_A_B_C的形式.</span>
Salin selepas log masuk
<span></span>
Salin selepas log masuk
Salin selepas log masuk

版权声明:本文为博主原创文章,未经博主允许不得转载。

以上就介绍了PHP CURL模拟JQuery的Ajax请求头添加可显示在_SERVER中的参数,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Tutorial mengemas kini versi curl di bawah Linux! Tutorial mengemas kini versi curl di bawah Linux! Mar 07, 2024 am 08:30 AM

Untuk mengemas kini versi curl di bawah Linux, anda boleh mengikuti langkah di bawah: Semak versi curl semasa: Pertama, anda perlu menentukan versi curl yang dipasang dalam sistem semasa. Buka terminal dan laksanakan arahan berikut: curl --version Perintah ini akan memaparkan maklumat versi curl semasa. Sahkan versi curl tersedia: Sebelum mengemas kini curl, anda perlu mengesahkan versi terkini yang tersedia. Anda boleh melawati tapak web rasmi curl (curl.haxx.se) atau sumber perisian yang berkaitan untuk mencari versi terkini curl. Muat turun kod sumber curl: Menggunakan curl atau penyemak imbas, muat turun fail kod sumber untuk versi curl pilihan anda (biasanya .tar.gz atau .tar.bz2

Bagaimana untuk mengendalikan 301 pengalihan semula halaman web dalam PHP Curl? Bagaimana untuk mengendalikan 301 pengalihan semula halaman web dalam PHP Curl? Mar 08, 2024 am 11:36 AM

Bagaimana untuk mengendalikan 301 pengalihan semula halaman web dalam PHPCurl? Apabila menggunakan PHPCurl untuk menghantar permintaan rangkaian, anda akan sering menemui kod status 301 yang dikembalikan oleh halaman web, yang menunjukkan bahawa halaman itu telah diubah hala secara kekal. Untuk mengendalikan situasi ini dengan betul, kami perlu menambah beberapa pilihan khusus dan logik pemprosesan pada permintaan Curl. Berikut akan memperkenalkan secara terperinci cara mengendalikan 301 pengalihan semula halaman web dalam PHPCurl, dan memberikan contoh kod khusus. Prinsip pemprosesan 301 ubah hala 301 ubah hala bermakna pelayan mengembalikan 30

Bagaimana untuk menyelesaikan ralat 403 yang dihadapi oleh permintaan jQuery AJAX Bagaimana untuk menyelesaikan ralat 403 yang dihadapi oleh permintaan jQuery AJAX Feb 20, 2024 am 10:07 AM

Tajuk: Kaedah dan contoh kod untuk menyelesaikan ralat 403 dalam permintaan AJAX jQuery Ralat 403 merujuk kepada permintaan bahawa pelayan melarang akses kepada sumber Ralat ini biasanya berlaku kerana permintaan itu tidak mempunyai kebenaran atau ditolak oleh pelayan. Apabila membuat permintaan jQueryAJAX, anda kadangkala menghadapi situasi ini Artikel ini akan memperkenalkan cara menyelesaikan masalah ini dan memberikan contoh kod. Penyelesaian: Semak kebenaran: Mula-mula pastikan alamat URL yang diminta adalah betul dan sahkan bahawa anda mempunyai kebenaran yang mencukupi untuk mengakses sumber tersebut.

Cara memasang, menyahpasang dan menetapkan semula sandaran pelayan Windows Cara memasang, menyahpasang dan menetapkan semula sandaran pelayan Windows Mar 06, 2024 am 10:37 AM

WindowsServerBackup ialah fungsi yang disertakan dengan sistem pengendalian WindowsServer, direka untuk membantu pengguna melindungi data penting dan konfigurasi sistem, serta menyediakan penyelesaian sandaran dan pemulihan yang lengkap untuk perusahaan peringkat kecil, sederhana dan perusahaan. Hanya pengguna yang menjalankan Server2022 dan lebih tinggi boleh menggunakan ciri ini. Dalam artikel ini, kami akan menerangkan cara memasang, menyahpasang atau menetapkan semula WindowsServerBackup. Cara Menetapkan Semula Sandaran Pelayan Windows Jika anda mengalami masalah dengan sandaran pelayan anda, sandaran mengambil masa terlalu lama, atau anda tidak dapat mengakses fail yang disimpan, maka anda boleh mempertimbangkan untuk menetapkan semula tetapan sandaran Pelayan Windows anda. Untuk menetapkan semula Windows

Bagaimana untuk menyelesaikan ralat permintaan jQuery AJAX 403 Bagaimana untuk menyelesaikan ralat permintaan jQuery AJAX 403 Feb 19, 2024 pm 05:55 PM

jQuery ialah perpustakaan JavaScript popular yang digunakan untuk memudahkan pembangunan sisi klien. AJAX ialah teknologi yang menghantar permintaan tak segerak dan berinteraksi dengan pelayan tanpa memuatkan semula keseluruhan halaman web. Walau bagaimanapun, apabila menggunakan jQuery untuk membuat permintaan AJAX, anda kadangkala menghadapi 403 ralat. Ralat 403 biasanya ralat akses yang dinafikan pelayan, mungkin disebabkan oleh dasar keselamatan atau isu kebenaran. Dalam artikel ini, kami akan membincangkan cara menyelesaikan permintaan jQueryAJAX yang menghadapi ralat 403

PHP dan Ajax: Membina enjin cadangan autolengkap PHP dan Ajax: Membina enjin cadangan autolengkap Jun 02, 2024 pm 08:39 PM

Bina enjin cadangan autolengkap menggunakan PHP dan Ajax: Skrip sisi pelayan: mengendalikan permintaan Ajax dan mengembalikan cadangan (autocomplete.php). Skrip pelanggan: Hantar permintaan Ajax dan cadangan paparan (autocomplete.js). Kes praktikal: Sertakan skrip dalam halaman HTML dan nyatakan pengecam elemen input carian.

Bagaimana untuk menyelesaikan masalah jQuery AJAX ralat 403? Bagaimana untuk menyelesaikan masalah jQuery AJAX ralat 403? Feb 23, 2024 pm 04:27 PM

Bagaimana untuk menyelesaikan masalah jQueryAJAX ralat 403? Apabila membangunkan aplikasi web, jQuery sering digunakan untuk menghantar permintaan tak segerak. Walau bagaimanapun, kadangkala anda mungkin menghadapi kod ralat 403 apabila menggunakan jQueryAJAX, menunjukkan bahawa akses dilarang oleh pelayan. Ini biasanya disebabkan oleh tetapan keselamatan bahagian pelayan, tetapi terdapat cara untuk mengatasinya. Artikel ini akan memperkenalkan cara menyelesaikan masalah ralat jQueryAJAX 403 dan memberikan contoh kod khusus. 1. membuat

Bagaimana untuk mendapatkan pembolehubah daripada kaedah PHP menggunakan Ajax? Bagaimana untuk mendapatkan pembolehubah daripada kaedah PHP menggunakan Ajax? Mar 09, 2024 pm 05:36 PM

Menggunakan Ajax untuk mendapatkan pembolehubah daripada kaedah PHP adalah senario biasa dalam pembangunan web Melalui Ajax, halaman boleh diperoleh secara dinamik tanpa menyegarkan data. Dalam artikel ini, kami akan memperkenalkan cara menggunakan Ajax untuk mendapatkan pembolehubah daripada kaedah PHP, dan memberikan contoh kod khusus. Pertama, kita perlu menulis fail PHP untuk mengendalikan permintaan Ajax dan mengembalikan pembolehubah yang diperlukan. Berikut ialah kod contoh untuk fail PHP mudah getData.php:

See all articles