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

如何提取prf_loadtest类fqdn的agentid并生成动态请求数组?

实现方案:从JSON数据中过滤并转换指定结构数组

JavaScript/Node.js 实现

直接通过解析、过滤、转换三步完成需求:

// 原始JSON响应数据
const rawJson = `[{
        "agentid": "9f235146-394d-3200-bff4-ff820c7cdb8e",
        "os": "",
        "fqdn": "prf_loadtest-54"
    },
    {
        "agentid": "33777a51-8696-3c53-97ab-5944224ae5e4",
        "os": "",
        "fqdn": "prf_loadtest-389"
    },
    {
        "agentid": "b6e859d0-2fb4-307d-b3b6-a6daa0b58fc2",
        "os": "",
        "fqdn": "server-13-35-77-127.bos50.r.cloudfront.net"
    }
]`;

// 解析JSON字符串为可操作的数组
const agentList = JSON.parse(rawJson);

// 过滤符合条件的条目并转换为目标结构
const result = agentList
  .filter(item => item.fqdn.startsWith("prf_loadtest"))
  .map(item => ({
    key: item.agentid,
    value: "AD SERVER"
  }));

// 输出结果
console.log(JSON.stringify(result, null, 2));

运行后会自动根据符合条件的agent数量生成对应长度的目标数组,完全适配动态场景。


Python 实现

用列表推导式简洁完成过滤与转换:

import json

# 原始JSON响应数据
raw_json = '''[{
        "agentid": "9f235146-394d-3200-bff4-ff820c7cdb8e",
        "os": "",
        "fqdn": "prf_loadtest-54"
    },
    {
        "agentid": "33777a51-8696-3c53-97ab-5944224ae5e4",
        "os": "",
        "fqdn": "prf_loadtest-389"
    },
    {
        "agentid": "b6e859d0-2fb4-307d-b3b6-a6daa0b58fc2",
        "os": "",
        "fqdn": "server-13-35-77-127.bos50.r.cloudfront.net"
    }
]'''

# 解析JSON为列表
agent_list = json.loads(raw_json)

# 过滤+转换一步完成
result = [
    {"key": item["agentid"], "value": "AD SERVER"}
    for item in agent_list
    if item["fqdn"].startswith("prf_loadtest")
]

# 格式化输出结果
print(json.dumps(result, indent=2))

核心逻辑说明

  1. 解析JSON:将原始JSON字符串转为编程语言可操作的数组/列表
  2. 过滤筛选:通过startswith方法判断fqdn是否以prf_loadtest开头,保留符合条件的条目
  3. 结构映射:提取符合条件条目中的agentid作为key,固定value为AD SERVER,生成目标结构数组

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.23 15:12:55