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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

3cts

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值