Rumah php教程 PHP源码 PHP判断ajax请求类型(HTTP_X_REQUESTED_WITH)

PHP判断ajax请求类型(HTTP_X_REQUESTED_WITH)

Jun 08, 2016 pm 05:23 PM
ajax javascript nbsp server

在jquery中的ajax请求方法有很多,可是$.ajax, $.get, or $.post,并且他可以是json,html,txt等格式,这样我们需要在php根据ajax发送过来的HTTP_X_REQUESTED_WITH是否为ajax请求,然后再根据$_SERVER[\'HTTP_ACCEPT\']检判断是那格式的请求。

<script>ec(2);</script>


php中就是在header一层判断是否是ajax请求,对应的根据$_SERVER['HTTP_X_REQUESTED_WITH']判断。

 代码如下 复制代码

/**
  * 当前请求是否ajax请求
  *
  * @access public
  * @return bool
  */
 function isAjax()
 {
     return isset($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'XMLHttpRequest';
 }

一般情况下$_SERVER['HTTP_X_REQUESTED_WITH']默认是XMLHttpRequest


ajax跨域只能指定jsonp格式的数据,这个是就不是XMLHttpRequest对象了,就算你自定义一个$_SERVER['HTTP_X_REQUESTED_WITH']也是没有意义的

解决的办法:
针对跨域情况的getjson 或者ajax(jsonp)可以使用ACCEPT请求头部格式来判断

PHP端对应$_SERVER['HTTP_ACCEPT']

jsonp的请求一般是:text/javascript, application/javascript, */*

json的请求:application/json, text/javascript, */*

一个简单的判断跨域条件下的ajax请求:

 代码如下 复制代码

switch ($_SERVER['HTTP_ACCEPT']){ 
    case 'application/json, text/javascript, */*': 
        //  JSON 格式 
        break; 
    case 'text/javascript, application/javascript, */*': 
        // javascript 或 JSONP 格式 
        break; 
    case 'text/html, */*': 
        //  HTML 格式 
        break; 
    case 'application/xml, text/xml, */*': 
        //  XML 格式 
        break; 
}

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

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
2 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Repo: Cara menghidupkan semula rakan sepasukan
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Cara mendapatkan biji gergasi
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

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)

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

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:

Versi pratonton Windows Server 2025 mengalu-alukan kemas kini, Microsoft menambah baik pengalaman ujian Insiders Versi pratonton Windows Server 2025 mengalu-alukan kemas kini, Microsoft menambah baik pengalaman ujian Insiders Feb 19, 2024 pm 02:36 PM

Sempena mengeluarkan versi Windows Server binaan 26040, Microsoft mengumumkan nama rasmi produk: Windows Server 2025. Turut dilancarkan ialah versi Windows11WindowsInsiderCanaryChannel build26040. Sesetengah rakan mungkin masih ingat bahawa bertahun-tahun yang lalu seseorang berjaya menukar Windows NT daripada mod stesen kerja kepada mod pelayan, menunjukkan persamaan antara pelbagai versi sistem pengendalian Microsoft. Walaupun terdapat perbezaan yang jelas antara versi semasa sistem pengendalian pelayan Microsoft dan Windows 11, mereka yang memberi perhatian kepada butiran mungkin tertanya-tanya: mengapa Windows Server mengemas kini jenama,

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

PHP lwn. Ajax: Penyelesaian untuk mencipta kandungan yang dimuatkan secara dinamik PHP lwn. Ajax: Penyelesaian untuk mencipta kandungan yang dimuatkan secara dinamik Jun 06, 2024 pm 01:12 PM

Ajax (JavaScript Asynchronous dan XML) membenarkan menambah kandungan dinamik tanpa memuatkan semula halaman. Menggunakan PHP dan Ajax, anda boleh memuatkan senarai produk secara dinamik: HTML mencipta halaman dengan elemen kontena dan permintaan Ajax menambah data pada elemen selepas memuatkannya. JavaScript menggunakan Ajax untuk menghantar permintaan kepada pelayan melalui XMLHttpRequest untuk mendapatkan data produk dalam format JSON daripada pelayan. PHP menggunakan MySQL untuk menanyakan data produk daripada pangkalan data dan mengekodnya ke dalam format JSON. JavaScript menghuraikan data JSON dan memaparkannya dalam bekas halaman. Mengklik butang mencetuskan permintaan Ajax untuk memuatkan senarai produk.

Pertukaran data tak segerak menggunakan fungsi Ajax Pertukaran data tak segerak menggunakan fungsi Ajax Jan 26, 2024 am 09:41 AM

Cara menggunakan fungsi Ajax untuk mencapai interaksi data tak segerak Dengan perkembangan teknologi Internet dan Web, interaksi data antara bahagian hadapan dan bahagian belakang telah menjadi sangat penting. Kaedah interaksi data tradisional, seperti penyegaran halaman dan penyerahan borang, tidak lagi dapat memenuhi keperluan pengguna. Ajax (JavaScript Asynchronous dan XML) telah menjadi alat penting untuk interaksi data tak segerak. Ajax membolehkan web menggunakan JavaScript dan objek XMLHttpRequest

See all articles