這篇文章主要介紹了php如何判斷是不是ajax請(qǐng)求,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
成都創(chuàng)新互聯(lián)公司專注于企業(yè)全網(wǎng)營(yíng)銷推廣、網(wǎng)站重做改版、邕寧網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、成都h5網(wǎng)站建設(shè)、商城網(wǎng)站建設(shè)、集團(tuán)公司官網(wǎng)建設(shè)、成都外貿(mào)網(wǎng)站建設(shè)公司、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁(yè)設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為邕寧等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。
php判斷是不是ajax請(qǐng)求的方法:1、通過(guò)“if(isset($_SERVER["HTTP_X_REQUESTED_WITH"]){...}”方法判斷;2、通過(guò)給頭部添加xmlhttp信息進(jìn)行判斷。
本文操作環(huán)境:Windows7系統(tǒng)、PHP7.1版本、Dell G3電腦
php怎么判斷是不是ajax請(qǐng)求?
PHP 判斷是否為 AJAX 請(qǐng)求
先說(shuō)前端使用 jQuery 時(shí)怎么區(qū)分:
jQuery 發(fā)出 ajax 請(qǐng)求時(shí),會(huì)在請(qǐng)求頭部添加一個(gè)名為 X-Requested-With 的信息,信息內(nèi)容為:XMLHttpRequest
在后端可以使用 $_SERVER["HTTP_X_REQUESTED_WITH"] 來(lái)獲取。(注意:中劃線換成了下劃線,不區(qū)分大小寫)
由此,我們可以這樣來(lái)判斷是否為 ajax 請(qǐng)求:
// php 判斷是否為 ajax 請(qǐng)求 http://www.cnblogs.com/sosoft/ if(isset($_SERVER["HTTP_X_REQUESTED_WITH"]) && strtolower($_SERVER["HTTP_X_REQUESTED_WITH"])=="xmlhttprequest"){ // ajax 請(qǐng)求的處理方式 }else{ // 正常請(qǐng)求的處理方式 };
在使用原生 JavaScript 發(fā)出 ajax 請(qǐng)求時(shí),我們也可以給頭部添加信息,以方便后端同學(xué)進(jìn)行區(qū)分,方法如下:
var xmlhttp=new XMLHttpRequest(); xmlhttp.open("GET","test.php",true); xmlhttp.setRequestHeader("X-Requested-With","XMLHttpRequest"); xmlhttp.send();
這里我們也一樣是給頭部添加 X_REQUESTED_WITH 信息,與 jQuery 的一致。當(dāng)然你也可以更改為別的信息來(lái)進(jìn)行區(qū)分。
OK,進(jìn)行區(qū)分之后有什么好處呢?說(shuō)兩個(gè)例子:
1.當(dāng) js 文件未加載完時(shí),用戶點(diǎn)擊了某個(gè)按鈕或鏈接,本應(yīng)是 ajax 請(qǐng)求的成了 正常請(qǐng)求,后端根據(jù)判斷,不輸出 ajax 時(shí)的 json 數(shù)據(jù),而是跳轉(zhuǎn),這也是優(yōu)雅降級(jí)的形式。
2. [A 頁(yè)面]使用 ajax 方式進(jìn)行登錄,[B 頁(yè)面]使用正常方式登錄,如果不區(qū)分,后端需要寫兩次幾乎完全相同的代碼,而有了區(qū)分,可以把重復(fù)的代碼消掉。
開啟PHP的偽靜態(tài) 。
感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“php如何判斷是不是ajax請(qǐng)求”這篇文章對(duì)大家有幫助,同時(shí)也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關(guān)知識(shí)等著你來(lái)學(xué)習(xí)!
網(wǎng)頁(yè)標(biāo)題:php如何判斷是不是ajax請(qǐng)求
轉(zhuǎn)載注明:http://chinadenli.net/article10/gpgedo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站設(shè)計(jì)、商城網(wǎng)站、網(wǎng)站建設(shè)、外貿(mào)網(wǎng)站建設(shè)、搜索引擎優(yōu)化、定制開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)