最近一直被ajax程序的错误所困扰. 为了查找定位bug费了很大的力气. 今天学了几个调试技巧和工具,觉得对我帮助很大. 总结一下,与大家分享.
首先是在firefox下使用firebug发现和定位ajax服务器端的错误.
因为ajax的特点, 在服务器端不能直接向页面输出,这样,有错很难直接从返回的数据中发现错误原因,(有时甚至没有返回值.)这时候,我们可以利用firebug的控制台功能,获取ajax客户端和服务器端的通讯信息,以及服务器端错误信息.
具体步骤:
1 打开firebug;
2开启控制台功能;
3.打开控制台的"所有"tab签;
4:运行ajax提交;
这时候,我们会看到:控制台输出一行信息: "POST : localhost/yourajaxserver.php",点开看看,别有洞天, 分别有"头信息","POST","响应","HTML","JSON"几栏;
其中"头信息"是服务器向AJAX客户端返回的HTTP头的数据,
"POST"是AJAX客户端向服务器端提交的数据,
"响应"是AJAX服务器端返回的数据
"HTML"是以HTML页面形式表现出的ajax服务器端返回的数据
"JSON"是对服务器返回的信息中的JSON数据直观地以key-value形式列表
这几个数据都很有用.比如,在服务器端的php程序中出现了数组索引错误, 导致程序执行失败, 如果开启了错误提示, 这个php程序就会在往"页面"上"显示"错误信息.而因为这是ajax服务器,所以,错误信息就被当做数据返回给了客户端,导致客户端解析返回数据出错.这时,因为我们看不到错误信息,所以往往觉得莫名其妙. 现在利用这个功能,可以很直观得查看错误信息和返回数据了