Karate 将JSON键作为文本获取

Karate 将JSON键作为文本获取,karate,Karate,正在尝试在空手道功能脚本中获取json密钥文本 嗨,我是空手道新手,正在浏览空手道的所有文档 当我得到下面代码中显示的GET响应时,我不确定响应的所有键都有哪些。因此,只要在响应中有关键文本是domain\u name,那么我想检索domain\u code { "status":"SUCCESS", "totalCount":1, "statusCode":"OK", "ResultData":{ "data":[ {"domain_code":"X3","domain

正在尝试在空手道功能脚本中获取json密钥文本

嗨,我是空手道新手,正在浏览空手道的所有文档

当我得到下面代码中显示的
GET
响应时,我不确定响应的所有键都有哪些。因此,只要在响应中有关键文本是
domain\u name
,那么我想检索
domain\u code

{
"status":"SUCCESS",
"totalCount":1,
"statusCode":"OK",
"ResultData":{
    "data":[
        {"domain_code":"X3","domain_name":"BMW"}, 
        {"domain_code":"Q5","domain_name":"AUDI"}, 
        {"domain_code":"G450","domain_name":"LEXUS"}
    ]
}

给你。如果任何部分不清楚,请阅读文档,从JsonPath开始:

* def response = 
"""
{
  "status": "SUCCESS",
  "totalCount": 1,
  "statusCode": "OK",
  "ResultData": {
    "data": [
        {"domain_code": "X3", "domain_name": "BMW" }, 
        {"domain_code": "Q5", "domain_name": "AUDI" }, 
        {"domain_code": "G450", "domain_name": "LEXUS" }
    ]
  }
}
"""
* def data = get[0] response..data[?(@.domain_name)]
* def keys = karate.keysOf(data)
* keys.remove('domain_name')
* print keys[0]

谢谢你,彼得。它起作用了。。我看到您正在使用get[0]。如何遍历所有项目?我尝试获取[*],但它不起作用。我相信这可能不是正确的语法。我去查一下文件。