Jsp中使用xmlhttp进行数据交互

王朝java/jsp·作者佚名  2006-11-24
窄屏简体版  字體: |||超大  

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

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航