SelectSingleNode返回错误的令牌无效

时间:2019-01-31 21:41:19

标签: xml vb.net

我试图获取Token节点的值,但我无法弄清楚自己在做什么错

这是让vb.net应用程序将XML字符串发送到URL

这是XML:

<?xml version="1.0" encoding="UTF-8"?>
-<soap:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema"   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
-<soap:Body>
-<ProcessRequestResponse xmlns="http://itiwnet.com/WebServices/">
-<ProcessRequestResult>
-<fiAPI xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://integration.fiapi.com" xsi:schemaLocation="http://integration.fiapi.com/fiAPI.xsd" xmlns:xenc="http://www.w3.org/2001/xmlenc#" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:ITI="http://www.ITIWnet.com/">
+<fiHeader Version="2.2">
-<Response TypeOfResponse="LoginRs" ResponseID="ReqID" More="false">
+<Status>
<Token>some really long stringToken>
</Response>
</fiAPI>
</ProcessRequestResult>
</ProcessRequestResponse>
</soap:Body>
</soap:Envelope>

这是我要使用的代码:

     Dim nsmgr As New XmlNamespaceManager(xmlDoc.NameTable)
     nsmgr.AddNamespace("xsd", "http://www.w3.org/2001/XMLSchema")
     nsmgr.AddNamespace("xsi", "http://www.w3.org/2001/XMLSchema-instance")
     nsmgr.AddNamespace("soap", "http://schemas.xmlsoap.org/soap/envelope/")
     nsmgr.AddNamespace("xenc", "http://www.w3.org/2001/xmlenc#")
     nsmgr.AddNamespace("ds", "http://www.w3.org/2000/09/xmlsig#")
     nsmgr.AddNamespace("ITI", "http://www.ITIWnet.com")
     txtToken.Text = xmlDoc.SelectSingleNode               ("soap:Body\ProcessRequestResponse\ProcessRequestResult\fiAPI\Response\Token"     , nsmgr).InnerText

我正在尝试获取令牌节点的值 任何帮助将不胜感激

1 个答案:

答案 0 :(得分:0)

无效令牌是反斜杠。 XPath仅使用正斜杠。