解析接口数据时遇到错误:Syntax Error: unexpected token <,定位到数据解析出错。打印数据后发现被解析的数据居然是html网页,当作json数据解析报错。原因是没有对ajax的url参数进行非空判断,当URL参数为null或“”时,ajax请求得到的数据为当前的页面内容。ajax的基础是XMLHttpRequest,通过XMLHttpRequest和服务端交换数据,调用open(method,url,async),send()向服务器发送请求。创建:
var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP”);
}
使用 readyState属性存储XMLHttpRequest的状态(0-4),readyState改变触发onreadystatechange事件。
status是从服务器返回的状态码,例如比较熟悉的404,500等