我对 XML 和 Web 服务非常陌生,所以我正在寻找一些方向。我有一个经典的 ASP Web 应用程序(好吧,别开玩笑了!),它使用 Web 服务从数据库中检索数据。我可以调用 Web 服务并很好地接收 SOAP 响应。我的问题是在尝试解析响应时出现的。我调用网络服务的代码是这样的......
Dim objXMLHttp, strEnvelop, strReturn
strEnvelope = <I build the soap message here>
set objXMLHttp = Server.CreateObject("MSXML2.XMLHTTP")
objXMLHttp.open "POST", "web service URL", false
objXMLHttp.setRequestHeader "Content-Type", "text/xml"
objXMLHttp.send strEnvelope
strReturn = objXMLHttp.responseText
所有这些都完美运行,并且 strReturn 中包含响应 XML。XML 看起来像这样......
<Envelope xmlns="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
<Body xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
<lookupCaseOutputCollection xmlns="http://xmlns.oracle.com/pcbpel/adapter/db/lookupCase" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<lookupCaseOutput>
<C_CASE_ID>100000</C_CASE_ID>
<I_FIRST_NM>BERNADINE</I_FIRST_NM>
<I_MI_NM>C</I_MI_NM>
<I_LAST_NM>TWOTEETH</I_LAST_NM>
<I_DOB_DT>1977-06-26</I_DOB_DT>
</lookupCaseOutput>
</lookupCaseOutputCollection>
</Body>
</Envelope>
当需要解析响应 XML 时,我得到了...
Dim xmlDoc
set xmlDoc = CreateObject("MSXML2.DOMDocument")
xmlDoc.async = false
xmlDoc.Load strReturn
这就是我卡住的地方。我需要能够提取和显示单个标签 C_CASE_ID、I_FIRST_NM 等的值。我不知道如何做到这一点。有没有人有任何建议/例子?
谢谢。