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

如何在PowerShell中根据名称从AVI API返回的JSON提取UUID到变量

提取AVI虚拟服务UUID到PowerShell变量

假设你已经通过API调用获取到虚拟服务的JSON数据并解析到了$virtualServices变量中,以下是针对固定名称提取UUID的实现逻辑:

核心提取逻辑

直接通过Where-Object过滤虚拟服务名称,提取对应的uuid属性值并存储到变量:

# 提取webapp-vs-sitea的UUID
$siteA_VS_UUID = ($virtualServices | Where-Object { $_.name -eq 'webapp-vs-sitea' }).uuid

# 提取webapp-vs-siteb的UUID
$siteB_VS_UUID = ($virtualServices | Where-Object { $_.name -eq 'webapp-vs-siteb' }).uuid

适配API返回结构的注意点

如果AVI Controller API返回的JSON数据外层包含results数组(这是REST API的常见返回格式),需要调整为针对results数组进行过滤:

# 当数据包含results数组时的提取方式
$siteA_VS_UUID = ($virtualServices.results | Where-Object { $_.name -eq 'webapp-vs-sitea' }).uuid
$siteB_VS_UUID = ($virtualServices.results | Where-Object { $_.name -eq 'webapp-vs-siteb' }).uuid

可选:验证提取结果

为避免后续脚本因UUID提取失败出现异常,可添加简单的验证逻辑:

if (-not $siteA_VS_UUID) {
    Write-Warning "未找到名称为webapp-vs-sitea的虚拟服务记录"
}
if (-not $siteB_VS_UUID) {
    Write-Warning "未找到名称为webapp-vs-siteb的虚拟服务记录"
}

内容的提问来源于stack exchange,提问作者I-1

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.18 09:35:18