Karate 我无法获取JSON对象的内部值
我无法获取这个json对象的内部嵌套键的值(它从我们的API调用中获取响应,我只是从karate中复制响应)Karate 我无法获取JSON对象的内部值,karate,Karate,我无法获取这个json对象的内部嵌套键的值(它从我们的API调用中获取响应,我只是从karate中复制响应) def temp1=tempreponse[0]。结果是的,您的响应看起来非常错误,一个JSON中的字符串等等。但即使这是预期的反应,空手道也能应付。请参阅有关类型转换的文档: 您正在将字符串放入result,但尝试将其作为数组访问。需要首先解析字符串。result不是嵌套对象,而是一个简单的字符串值,它本身再次包含JSON。您需要对tempResponse[0]进行JSON解码。结果,
def temp1=tempreponse[0]。结果是的,您的响应看起来非常错误,一个JSON中的字符串等等。但即使这是预期的反应,空手道也能应付。请参阅有关类型转换的文档:
您正在将字符串放入
result
,但尝试将其作为数组访问。需要首先解析字符串。result
不是嵌套对象,而是一个简单的字符串值,它本身再次包含JSON。您需要对tempResponse[0]进行JSON解码。结果,然后才能获取具有要访问的属性的对象数组。是的,我明白了。谢谢你的帮助。那么我们制作的回应是不正确的,或者空手道的回应是不正确的,我会深入研究它哇~⊙o⊙ 是的,它起作用了。空手道太棒了,我喜欢它。谢谢你的快速回复
[
{
"code": 200,
"result": "[{\"distinct\":false,\"operatetime\":\"2019-05-17 17:01:01\",\"personid\":\"e8edec61-fd1a-4c69-8b60-fb8d21d06095\",\"sampleid\":\"1c9410cd-608d-4eb1-8d12-c8f2faf7fca4\"}]"
}
]
And def tempreponse = [{"code":200,"result":"[{\"distinct\":false,\"operatetime\":\"2019-05-17 17:01:01\",\"personid\":\"e8edec61-fd1a-4c69-8b60-fb8d21d06095\",\"sampleid\":\"1c9410cd-608d-4eb1-8d12-c8f2faf7fca4\"}]"}]
* def response =
"""
[
{
"code": 200,
"result": "[{\"distinct\":false,\"operatetime\":\"2019-05-17 17:01:01\",\"personid\":\"e8edec61-fd1a-4c69-8b60-fb8d21d06095\",\"sampleid\":\"1c9410cd-608d-4eb1-8d12-c8f2faf7fca4\"}]"
}
]
"""
* json result = response[0].result
* def personId = result[0].personid
* match personId == 'e8edec61-fd1a-4c69-8b60-fb8d21d06095'