我正在調試Ajax調用。如何調試AJAX請求?如何知道哪個PHP函數被調用?
如何知道ajax調用哪個特定的PHP函數?
我只能看到請求和JavaScript代碼觸發請求,但我不知道如何處理請求在服務器端?
我目前正在檢查所有的PHP代碼,但我想知道如果有一個更簡單的方法..
感謝
我正在調試Ajax調用。如何調試AJAX請求?如何知道哪個PHP函數被調用?
如何知道ajax調用哪個特定的PHP函數?
我只能看到請求和JavaScript代碼觸發請求,但我不知道如何處理請求在服務器端?
我目前正在檢查所有的PHP代碼,但我想知道如果有一個更簡單的方法..
感謝
Debugging PHP AJAX Applications with FirePHP
alt text http://www.diloc.de/blog/wp-content/uploads/2008/07/serverside-php.png
alt text http://www.diloc.de/blog/wp-content/uploads/2008/07/firebug-output.png
alt text http://www.diloc.de/blog/wp-content/uploads/2008/07/firebug-object.png
alt text http://www.diloc.de/blog/wp-content/uploads/2008/07/firebug-trace.png
只要使用螢火蟲,請求發送後,尋找響應。例如function1 echo foo,function2 echo bar,如果它是空白的......這兩個函數都沒有被調用。
在我的最後,我使用Safari並發現從ajax調用PHP腳本的請求/響應是一件輕而易舉的事情。
如果你想要一個真正的調試環境並能夠在你的php代碼中設置斷點,請參考zend調試器或xdebug。兩者都可以通過pdt eclipse-plugin或其他IDE進行控制。
如果你只是想看到一些小的信息,當然你可以添加一些echo或var_dump到你的php代碼,然後使用firebug firefox擴展來查看對你的ajax請求的響應,它包含回顯的字符串。
Ajax調用不會調用特定的函數,它只是執行腳本。看看這個腳本,搜索它的「主要」(無論你的腳本中有什麼名字),你就會擁有執行的功能。
使用Firefox的插件螢火調試,您可以輕鬆地檢查出的請求和響應的數據內容。
http://www.daniweb.com/web-development/php/code/216729
因此,通過正確,阿賈克斯無法訪問遠程Web服務器的內容,所以你需要代理頁面在整個建築流程的中間。
所以這意味着: [在同一服務器]使用AJAX PHP頁面 - > Web服務/ Web服務器包含您的響應函數
[在2臺服務器,連接到遠程服務器] PHP頁面使用AJAX - > PHP代理頁面 - >包含你的響應函數的Web服務/ Web服務器
因此,整個代理頁面就像一個「中間人」,連接到遠程站點。
[重要] 不要混淆路由器代理和代理頁面,但有相同的理論,但它是不同的東西。
是的,但你仍然必須猜測函數包含在哪個php文件中,哪個是函數,對不對?在Firebug中,我看到了帖子和答案,但我沒有看到誰在生成答案 – aneuryzm 2010-11-11 09:58:09