首先发送请求,然后处理响应。我用.net写的WebService,直接访问,点击方法名称可以看到实例代码,只需要在asp中使用Microsoft.XMLHTTP发送请求,然后处理xml的结果就行了。
要注意Namespace不能写错了。
<
%@language
=
vbscript codepage
=
936
%
>
< html xmlns = " http://www.w3.org/1999/xhtml " >
< head >
< meta http - equiv = " Content-Type " content = " text/html; charset=gb2312 " />
</ head >
< body >
< %
Dim strxml
Dim str
' 定义soap消息
strxml = " <?xml version='1.0' encoding='utf-8'?> "
strxml = strxml & " <soap:Envelope xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:soap='http://schemas.xmlsoap.org/soap/envelope/'> "
strxml = strxml & " <soap:Body> "
strxml = strxml & " <Decrypt xmlns='http://192.168.3.239:8000/3des/'> "
strxml = strxml & " <strIn>4Dv5esfHAh0=</strIn> "
strxml = strxml & " <strKey>Not.ceNte</strKey> "
strxml = strxml & " </Decrypt> "
strxml = strxml & " </soap:Body> "
strxml = strxml & " </soap:Envelope> "
Set h = createobject ( " Microsoft.XMLHTTP " )
' 向指定的URL发送Post消息
h.open " POST " , " http://192.168.3.239:8000/3des/Service.asmx " , False
h.setRequestHeader " Content-Type " , " text/xml; charset=utf-8 "
h.setRequestHeader " Content-Length " , LEN (strxml)
h.setRequestHeader " SOAPAction " , " http://192.168.3.239:8000/3des/Decrypt "
h.send (strxml)
' 显示返回的XML信息
If h.Status = 200 Then
Set xmlDOC = server.CreateObject( " MSXML.DOMDocument " )
xmlDOC.load(h.responseXML)
str = xmlDOC.childNodes( 1 ).Text ' '调用SHOWALLNODE
' 遍历并取出xml中的一个节点
Set Node = xmlDOC.getElementsByTagName( " RegionID " )
' for x=Node.length-1 to 0 step -1
regMgrID = Node.item( 0 ).Text
' next
Set xmlDOC = nothing
response.write(str)
Else
Response.Write h.Status & " "
Response.Write h.StatusText
End if
% >
</ body >
</ html >
< html xmlns = " http://www.w3.org/1999/xhtml " >
< head >
< meta http - equiv = " Content-Type " content = " text/html; charset=gb2312 " />
</ head >
< body >
< %
Dim strxml
Dim str
' 定义soap消息
strxml = " <?xml version='1.0' encoding='utf-8'?> "
strxml = strxml & " <soap:Envelope xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:soap='http://schemas.xmlsoap.org/soap/envelope/'> "
strxml = strxml & " <soap:Body> "
strxml = strxml & " <Decrypt xmlns='http://192.168.3.239:8000/3des/'> "
strxml = strxml & " <strIn>4Dv5esfHAh0=</strIn> "
strxml = strxml & " <strKey>Not.ceNte</strKey> "
strxml = strxml & " </Decrypt> "
strxml = strxml & " </soap:Body> "
strxml = strxml & " </soap:Envelope> "
Set h = createobject ( " Microsoft.XMLHTTP " )
' 向指定的URL发送Post消息
h.open " POST " , " http://192.168.3.239:8000/3des/Service.asmx " , False
h.setRequestHeader " Content-Type " , " text/xml; charset=utf-8 "
h.setRequestHeader " Content-Length " , LEN (strxml)
h.setRequestHeader " SOAPAction " , " http://192.168.3.239:8000/3des/Decrypt "
h.send (strxml)
' 显示返回的XML信息
If h.Status = 200 Then
Set xmlDOC = server.CreateObject( " MSXML.DOMDocument " )
xmlDOC.load(h.responseXML)
str = xmlDOC.childNodes( 1 ).Text ' '调用SHOWALLNODE
' 遍历并取出xml中的一个节点
Set Node = xmlDOC.getElementsByTagName( " RegionID " )
' for x=Node.length-1 to 0 step -1
regMgrID = Node.item( 0 ).Text
' next
Set xmlDOC = nothing
response.write(str)
Else
Response.Write h.Status & " "
Response.Write h.StatusText
End if
% >
</ body >
</ html >