當頁面調用正常時調用ajax是否有區別? 我的意思是我怎麼能找出一個頁面調用ajax或直接調用?php ajax和普通頁面的區別
回答
爲了區分正常的頁面加載和AJAX加載......有些可能會編碼到JS變量中傳遞給指示AJAX的PHP頁面。這可以讓你修改輸出爲JSON或任何你想做的事情。
其他人使用單獨的php腳本進行AJAX。
但是,有很多方法可以解決這個問題。更詳細的信息,如果你有問題,但這些可能是最簡單的。
編輯:如果您沒有看到作爲主註釋發佈的URL可能重複。這應該只回答你關於識別ajax請求的問題。
最知名的Ajax框架,如 jQuery和MooTools的添加特定的 頭,你可以用PHP檢查:
if (strcasecmp('XMLHttpRequest', $_SERVER['HTTP_X_REQUESTED_WITH']) === 0)
{
// Ajax Request
}
這麼認爲我添加一個額外的變量時,我想使用AJAX(財產以後像ajax = true)它是安全的方式嗎?當我使用ajax函數輸出將作爲JSON編碼回顯,並且它不是很好,當任何人寫URL並在URL的末尾追加「ajax = true」時請參閱編碼json代碼!比這種方式安全嗎? – Hamid 2011-04-18 18:25:35
我不是100%確定的,但我個人不會擔心人們故意轉到JSON URL時意外看到JSON。這將允許您在需要時測試您的代碼,並且您不應通過JSON響應提供任何正常頁面請求中未提供的有意義的數據 - 不要假設用戶無法看到它,導致這總是可能的。您可能會考慮在AJAX請求中使用POST而不是GET,這會讓人們更難以通過瀏覽器URL使用GET意外訪問它。祝你好運! – 2011-04-19 12:20:14
您可以將參數添加到通話,例如:
xmlhttp.open("GET","page.php?request=ajax",false);
,然後檢查它在PHP:
if($_GET['request'] == 'ajax'){
//this was called by ajax!
}
的
- 1. Ajax上傳和普通上傳的區別
- 2. JavaBean,POJO和普通類的區別?
- 3. randn和普通Python之間的區別
- 4. 普通語言和普通語法之間的區別
- 5. 主頁和普通頁面中的CSS
- 6. MacVim和普通Vim有什麼區別?
- 7. 表面和紋理之間的區別(SDL /普通)
- 8. EOF和普通整數有什麼區別?下面
- 9. 通過PHP和AJAX加載頁面
- 10. Php分頁和MYSQL區別
- 11. 識別普通文件夾和「。」/「..」文件夾之間的區別
- 12. GSP與普通Apriori方法的區別
- 13. Sitecore頁面爲普通htmls
- 14. sap.m.page和sap.m.semantic.SemanticPage之間的區別頁面
- 15. jQueryMobile - 如何結合內部頁面和普通頁面刷卡?
- 16. 使用與表單着陸頁相同的頁面和普通頁面
- 17. 面對Gson時,匿名類和普通派生類之間的區別?
- 18. 區分維基百科對普通頁面的歧義
- 19. 使用套接字連接和普通的PHP/MySQL/Ajax進行聊天之間的區別
- 20. 查找tarred文件夾和普通文件夾的區別
- 21. 休眠時JTA,JPA和普通JDBC之間的區別
- 22. 抽象類擴展和普通類之間的區別延伸
- 23. 使用sdk和普通方法創建Firefox插件的區別
- 24. 靜態嵌套類和普通類之間的區別
- 25. 可可觸摸類和普通的swift類有什麼區別?
- 26. 物化視圖和普通表在mysql中的區別?
- 27. pagebookview和普通視圖之間的區別
- 28. Mandrill - global_merge_vars和普通merge_vars之間的區別
- 29. ajax和jquery的區別?
- 30. XMLHttpRequest和$ ajax的區別
可能重複[檢測的Ajax調用URL](http://stackoverflow.com/questions/3124636/detect-ajax-calling-url) – 2011-04-18 15:53:04