使用 jsonpath 在 json 中提取元素值
Extract an element value in json using jsonpath
以下是我的json数据
{
"primary": [
{
"secondary": {
"name": {
"fullname": "fullname1"
},
"alias": "alias1"
},
"reference": "reference1"
},
{
"secondary": {
"name": {
"fullname": "fullname2"
},
"alias": "alias2"
},
"reference": "reference2"
}
]
}
现在我想使用 json 路径从这个 json 数据中提取基于基于条件的全名值的 "alias" 值。
我正在使用以下表达式但无法解析结果
$.primary[*].secondary[?(@.name.fullname == "fullname1")].alias
您的 JSON 格式不正确,如果它真的看起来像您发布的那样 - 您将无法使用 JSON 提取器,您将不得不切换到 Regular Expression Extractor。
有效的 JSON 类似于:
{
"primary": [
{
"secondary": {
"name": {
"fullname": "fullname1"
},
"alias": "alias1"
},
"reference": "reference1"
},
{
"secondary": {
"name": {
"fullname": "fullname2"
},
"alias": "alias2"
},
"reference": "reference2"
},
{
"type": "online"
}
]
}
如果你的 JsonPath expression works fine as it evidenced by JsonPath Tester mode of the View Results Tree listener:
是正确的
以下是我的json数据
{
"primary": [
{
"secondary": {
"name": {
"fullname": "fullname1"
},
"alias": "alias1"
},
"reference": "reference1"
},
{
"secondary": {
"name": {
"fullname": "fullname2"
},
"alias": "alias2"
},
"reference": "reference2"
}
]
}
现在我想使用 json 路径从这个 json 数据中提取基于基于条件的全名值的 "alias" 值。
我正在使用以下表达式但无法解析结果
$.primary[*].secondary[?(@.name.fullname == "fullname1")].alias
您的 JSON 格式不正确,如果它真的看起来像您发布的那样 - 您将无法使用 JSON 提取器,您将不得不切换到 Regular Expression Extractor。
有效的 JSON 类似于:
{
"primary": [
{
"secondary": {
"name": {
"fullname": "fullname1"
},
"alias": "alias1"
},
"reference": "reference1"
},
{
"secondary": {
"name": {
"fullname": "fullname2"
},
"alias": "alias2"
},
"reference": "reference2"
},
{
"type": "online"
}
]
}
如果你的 JsonPath expression works fine as it evidenced by JsonPath Tester mode of the View Results Tree listener:
是正确的