You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

针对指定REST API,如何用XPath或查询参数筛选<deleted>=false的数据?

筛选REST API返回XML中为false的数据的实现方案

背景信息

指定REST API地址:https://{ip}:{port}/fedsvc/objectstores
该API返回的XML响应如下:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Objects>
    <Object>
        <Id>objct040</Id>
        <Name>longevity-large</Name>
        <status>Starting</status>
        <deleted>false</deleted>
    </Object>
    <Object>
        <Id>obs1040</Id>
        <Name>SRS-large</Name>
        <status>Starting</status>
        <deleted>true</deleted>
    </Object>
</Objects>

需求是仅提取<deleted>字段值为false的数据,预期结果如下:

<Id>objct040</Id>
<Name>longevity-large</Name> 
<status>Starting</status>
<deleted>false</deleted>

实现方案

1. 使用XPath筛选(客户端/工具端处理)

如果是在获取XML响应后,通过客户端代码或XML处理工具进行筛选,可以使用以下XPath表达式:

  • 定位符合条件的<Object>节点:
    /Objects/Object[deleted='false']
    
  • 直接获取该节点下的所有子元素(即预期结果内容):
    /Objects/Object[deleted='false']/*
    
    这个表达式会精准匹配<deleted>值为false的<Object>节点下的全部子节点,完全符合提取需求。

2. 使用API查询参数(服务端过滤,需API支持)

如果该REST API本身支持查询过滤功能,可以在请求URL中添加过滤参数,常见的格式示例:

https://{ip}:{port}/fedsvc/objectstores?deleted=false

不过具体的参数格式需要参考API的官方文档,不同API的过滤规则可能不同,比如有些会使用filter=deleted eq false这类格式。


内容的提问来源于stack exchange,提问作者Sourabh Agrawal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 00:25:04