【发布时间】:2015-03-02 03:54:18
【问题描述】:
我正在尝试解析来自 amazon api 的 xml 响应。
这是收到的 xml 文件的一部分:
<BrowseNodeLookupResponse xmlns="http://webservices.amazon.com/AWSECommerceService/2011-08-01">
<OperationRequest>
<RequestId>31317fca-ad3d-4ff0-a64f-693c0e44959b</RequestId>
<Arguments>
<Argument Name="Operation" Value="BrowseNodeLookup" />
<Argument Name="Service" Value="AWSECommerceService" />
<Argument Name="Version" Value="2011-08-01" />
<Argument Name="BrowseNodeId" Value="186606" />
<Argument Name="Timestamp" Value="2015-01-04T11:50:06Z" />
<Argument Name="ResponseGroup" Value="BrowseNodeInfo" />
</Arguments>
<RequestProcessingTime>0.002221</RequestProcessingTime>
</OperationRequest>
<BrowseNodes>
我想阅读参数时间戳。这是我的代码,但它只有在我删除 xml 文件中的 xmlns 属性时才有效。
Dim nodeTimestamp As XmlNode = doc.SelectSingleNode("/BrowseNodeLookupResponse/OperationRequest/Arguments/Argument[@Name='Timestamp']")
Dim text As String = nodeTimestamp.Attributes.ItemOf("Value").InnerText
【问题讨论】:
-
这是一个非常常见的问题。答案是使用
XmlNamespaceManager并为该亚马逊命名空间声明一个前缀。
标签: .net xml vb.net parsing amazon