我试图获取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
我正在尝试获取令牌节点的值 任何帮助将不胜感激
答案 0 :(得分:0)
无效令牌是反斜杠。 XPath仅使用正斜杠。