服务热线:13616026886

技术文档 欢迎使用技术文档,我们为你提供从新手到专业开发者的所有资源,你也可以通过它日益精进

位置:首页 > 技术文档 > JAVA > 新手入门 > 基础入门 > 查看文档

jsp中使用xmlhttp进行数据交互


 1.客户端提交请求

domain = " test.com"
sxml = "<?xml version=""1.0"" encoding=""gb2312"" ?>" &_
     "<package>" &_
     "<domain>" & domain & "</domain>" &_
     "</package>"
 set od = server.createobject("microsoft.xmlhttp")
 od.open "post", "http://server/domain_check.jsp", false
 od.send(sxml)
 
 if od.status = 200 then
  result = od.responsetext
  set o = server.createobject("microsoft.xmldom")
  o.loadxml(result)
  
  domain = cint(o.selectsinglenode("//result").text)
  response.write domain
  set o = nothing
  set od = nothing
 end if

2.服务器端解析数据包

<%@ page import="java.util.*" %>
<%@ page import="java.text.*" %>
<%@ page import="java.io.*" %>
<%@ page import="org.w3c.dom.*" %>
<%@ page import="javax.xml.parsers.*" %>
<%@ page contenttype="text/html; charset=gbk" %>
<%
 //获得数据包
 request.setcharacterencoding("utf-8");
 bufferedreader in = request.getreader();
 string line;
 string xmlrequest = "";
 string domain_name = "";
 
 while ((line = in.readline()) != null)
 {
  //构造数据包
  xmlrequest = xmlrequest + line + "/n";
 }
 documentbuilderfactory factory = documentbuilderfactory.newinstance();
 documentbuilder db = factory.newdocumentbuilder();
 bytearrayinputstream stream = new bytearrayinputstream(xmlrequest.getbytes("utf-8"));
 document doc = db.parse(stream);
 element root = doc.getdocumentelement();

 nodelist domain = root.getelementsbytagname("domain");
 if (domain.getlength() == 1) {
  element e = (element) domain.item(0);
  domain_name = (string) e.getfirstchild().getnodevalue();
 }
//返回数据
 out.println("<?xml version=/"1.0/" encoding=/"gb2312/" ?>/n");
 out.println("<package>/n");
 out.println("/t<result>" + domain_name + "</result>/n");
 out.println("</package>");
%>

3.得到返回结果

test.com

扫描关注微信公众号