JavaWeb课程系列
2.4使用js发送ajax请求示例
1)发送get请求:
//获取xhr对象 var xhr = getXMLHttpRequest(); //设置请求信息 xhr.open("get","AjaxServlet?&t="+Math.random(),true); //发送请求 xhr.send(); //监听请求状态 xhr.onreadystatechange = function(){ //当响应完成 if(xhr.readyState == 4){ //且状态码为200时 if(xhr.status == 200){ //接收响应信息(文本形式) var text = xhr.responseText; //弹出消息 alert(text); } }; };
|
2)发送post请求
//获取xhr对象 var xhr = getXMLHttpRequest(); //设置请求信息 xhr.open("post","2.jsp",true); //设置请求头 xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); //发送请求 xhr.send("hello=123456"); //监听请求状态 xhr.onreadystatechange = function(){ //当响应完成 if(xhr.readyState == 4){ //且状态码为200时 if(xhr.status == 200){ //接收响应信息(文本形式) var text = xhr.responseText; //弹出消息 alert(text); } };
|
3.json数据
js对xml数据的操控性不是很好。例如,返回这段xml
<student><name>tomcat</name><age>20</age></student>
js的处理如下:
var ele = xhr.responseXml;
var nodeVal = ele.getElementsByTagName(“name”).firstChild.nodeValue;
这种处理方式很麻烦。而且xml虽然看起来很清晰,但是标签占据了基本1/3内容,比较浪费流量。
json就能解决上述问题。js也是原生支持json。操作很方便。
3.1什么是json
json(JavaScript Object Notation(javascript对象表示法)),是一种轻量级的数据交换格式。有着自己独立简单的语法。
json经常被用来传递数据,他的数据信息集中,占用空间少,解析方便。
json的本质就是js对象。js中我们创建对象可以直接进行属性赋值操作,stu.name=”xx”;