2011-07-29 58 views
1

我使ajax調用文件/ajax.phpjQuery檢查文件

它給了我一些數據。

如何檢查ajax.php裏面,這個文件是直接在瀏覽器中打開還是通過真正的ajax調用?

+0

你應該使用POST ajax請求 –

+1

只是好奇,但爲什麼它應該有所作爲? – hughes

+0

@hughes不想看到我的js的rip – James

回答

-1

確保這是一個真正的ajax請求的最好方法是使用像firebug,fiddler或谷歌瀏覽器開發工具中的網絡標籤工具。您可以觀察瀏覽器和服務器之間的流量,流量等內容。

+0

我想看看如何PHP訪問螢火蟲。 – jAndy

+0

php不訪問firebug,firebug是Firefox的瀏覽器插件,您可以使用它來調試您的javascript,ajax調用,css等。它主要是一個非常有用的調試客戶端代碼而非服務器端的工具。 – Doga

+0

哦,所以你不能訪問與PHP的螢火蟲控制檯?可能node.js可以做到!!!!!! – jAndy

1

我認爲PHP開發人員這樣做的通常方式是在ajax請求期間向服務器傳遞一個標誌。

我見過的常用標誌一直以:ajax: true

$.ajax({ 
url : "/ajax.php", 
type: "POST", // If you want to send the data as a POST rather than GET 
data: ({ajax: true}) 
}); 
2

快速和骯髒的答案是一樣,你不能讓它確保100%。 「AJAX」請求仍然是正常的HTTP請求。可能最好的方式是稍微驗證一下,即設置一個自定義的HTTP標頭,您必須在服務器端檢查它。

例如,如果HTTP請求是ajax請求,則向HTTP請求添加X-Requested-With標頭是一種常見做法。例如,jQuery將這個頭文件放在所有的請求中。

+0

不錯的想法,但我們如何檢查ajax.php中的請求標題?你能舉個例子嗎?不知道該怎麼做 – James

+0

由於OP試圖將其作爲一種安全形式,我只想指出某人在自己的請求中添加「X-Requested-With」是沒有問題的。這不會阻止人們看到你的迴應。 – hughes

+0

@hughes:我以爲這是我的第一句話。 – jAndy