【发布时间】:2021-05-13 20:31:21
【问题描述】:
问题是我从一个 GET 请求到 WMS 服务器得到一个“application/xml”响应,然后我使用 DOMParser().parseFromString() 方法使用 XPath 表达式进行解析。我尝试查看不同的解决方案,例如专用库,但我发现了有关 XPath 表达式的信息,现在我需要帮助编写一个 XPath 表达式,它将返回层标签的名称和 XML 响应的标题,看起来像
<Layer>
<Title>Title Level 1</Title>
<Name>Name Level 1</Name>
<Layer>
<Title>Title Level 2</Title>
<Name>Name Level 2</Name>
<Layer>
<Title>Title Level 3-1</Title>
<Name>Name Level 3-1</Name>
</Layer>
<Layer>
<Title>Title Level 3-2</Title>
<Name>Name Level 3-2</Name>
</Layer>
</Layer>
</Layer>
并且会返回一个 JSON
{
title: 'Title Level 1'
name: 'Name Level 1'
children: [
{
title: 'Title Level 2'
name: 'Name Level 2'
children: [
{
title: 'Title Level 3-1'
name: 'Name Level 3-1'
},
{
title: 'Title Level 3-1'
name: 'Name Level 3-1'
}
]
]
}
【问题讨论】:
-
XPath 用于查询 XML。与其说是构建输出流。你可以看看 xslt。 Is 使用 XPath 来匹配 XML 节点并且可以输出任何你喜欢的东西。这个答案stackoverflow.com/a/24123408/3710053可以给你一个好主意
标签: javascript xml xpath tree wms