,可以按照以下步骤进行:
DOMParser
。parseFromString
方法将XML字符串解析为DOM文档对象。Layer
或LayerList
元素中。getElementsByTagName
或querySelectorAll
,根据XML结构中的元素名称或选择器来获取图层元素。以下是一个示例代码片段,演示如何使用Javascript DOM解析器从WMS GetCapabilities请求的XML response.data中提取图层列表:
// 假设response.data是WMS GetCapabilities请求的XML响应字符串
// 创建DOM解析器对象
const parser = new DOMParser();
// 将XML字符串解析为DOM文档对象
const xmlDoc = parser.parseFromString(response.data, "text/xml");
// 获取图层元素列表
const layerElements = xmlDoc.getElementsByTagName("Layer");
// 遍历图层元素列表,提取图层信息
const layerList = [];
for (let i = 0; i < layerElements.length; i++) {
const layerElement = layerElements[i];
// 提取图层名称
const layerName = layerElement.getElementsByTagName("Name")[0].textContent;
// 提取图层ID
const layerId = layerElement.getElementsByTagName("Title")[0].textContent;
// 将图层信息存储在对象中
const layerInfo = {
name: layerName,
id: layerId
};
// 将图层信息添加到图层列表
layerList.push(layerInfo);
}
// 打印图层列表
console.log(layerList);
请注意,以上代码仅为示例,实际应用中可能需要根据XML结构的具体情况进行调整。此外,对于WMS GetCapabilities请求的XML响应,可能还包含其他信息,如图层的空间范围、支持的投影方式等,可以根据需要进行进一步提取和处理。
领取专属 10元无门槛券
手把手带您无忧上云