我正在製作一個程序來監視我的網絡,並且在此程序中,我正在讀取正在經過我的網絡的HTTP流量。我想要做的一件事是將AJAX HTTP流量與「正常」HTTP流量分開。是否有可能做這樣的事情? HTTP標頭中是否有可以告訴你請求是否是AJAX請求的東西?是否可以通過查看HTTP流量來查看是否使用了AJAX?
回答
有大多數框架在製作AJAX請求時設置的X-Requested-With
標頭。它看起來像這樣:
X-Requested-With: XMLHttpRequest
有沒有保證(顯然頭是在客戶端的完全控制下),但通常它在那裏。
我不知道'X-Requested-With'標頭,但是當我檢查一個簡單的使用Firefox製作的AJAX請求時,我找不到這個標頭,所以我不確定這個標頭有多信任。 – Cokegod 2013-05-10 23:02:55
@科克戈德:好吧,沒有頭可以被「信任」,因爲它們都是客戶的樂趣。 *在實踐中*,我知道的所有框架都會在發出AJAX請求時自動設置此標頭。但讓我們以你的反例爲例:你提出了請求,你檢查了它。有沒有什麼明確標記爲AJAX?大概不會。所以這就是您可信賴的答案。 – Jon 2013-05-10 23:07:48
我知道我永遠不可能100%信任頭,但是你確實有'User-Agent'頭,它幾乎總是被使用。我希望有類似的東西來顯示請求是否通過AJAX發送。我想如果我找不到更好的東西,我會使用'X-Requested-With'標頭。 – Cokegod 2013-05-10 23:11:30
- 1. 檢查,看看是否通過FTP
- 2. 是否可以查詢ErrorProvider以查看是否設置了錯誤?
- 3. 是否可以使用php來查看活動會話?
- 4. 是否可以查看HttpClient的org.apache.http.conn.EofSensorInputStream?
- 5. 是否可以查看文檔?
- 6. 是否可以通過視圖「查看」不透明的父項?
- 7. 使用DD查看all_constraints以檢查FK約束是否可行
- 8. 是否可以通過查看證書來確定是否正在使用HTTPS代理?
- 9. 檢查用戶是否看過東西
- 10. 是否可以按國家查看應用下載量?
- 11. 是否可以使用Fiddler來調試Http流量問題?
- 12. 如何查看我的視圖是否可以看到?
- 13. HealthKit:是否可以通過查詢來總結兩個數量?
- 14. 查看結果是否爲
- 15. Ping sagepay查看是否down
- 16. 查看密碼是否等於變量
- 17. 在django中,是否可以使用F()對象來查看常量是否包含字段中的字符串?
- 18. 是否可以在Packetbeat中查看來自請求的HTTP POST數據?
- 19. Keras - 是否可以查看模型的重量和偏差
- 20. 是否可以在Google Analytics中單獨查看網址變量?
- 21. 是否可以通過查看URL來確定資源是否在BlobStore上託管?
- 22. 是否可以使用DTrace查看傳遞給strncpy的參數?
- 23. 是否可以使用MFMessageComposeViewController查看發送SMS的內容?
- 24. 是否可以使用Synopse SynPDF庫查看PDF文件?
- 25. 是否可以使用git查看網站克隆的分支?
- 26. 是否可以使用gomobile呈現/查看html?
- 27. 是否可以通過腳本檢查Vagrant框是否過期?
- 28. 是否可以通過EMR(通過VPC)看到Spark UI?
- 29. 查看是否有任何QTips可見?
- 30. DataGridView:查看ColumnHeaders是否真的可見
一個駭客解決的辦法是檢查JSON和可能的XML響應。 – millimoose 2013-05-10 22:49:24