当前位置: 首页 > 知识库问答 >
问题:

如何使用空手道API解析下面的JSON响应

夏谦
2023-03-14

任何人都可以在空手道API中如何部分下面的响应

这里我想从响应中提取partNumber和productTitle,其中响应中的初始数字是动态的,对于每个get方法,数字都会发生变化。

{"项目":{'41651625424':{itemCore:{部件号:'1234567',产品名称:'空手道API测试'}}}}

共有1个答案

夏宪
2023-03-14

有多种方法,但在这种情况下,我的最佳选择是使用JsonPath:

* def response = { "items": { '41651625424': { itemCore: { partNumber: '1234567', productTitle: 'Karate API Testing' }}}}
* def itemCore = get[0] response..itemCore
* match itemCore == { partNumber: '1234567', productTitle: 'Karate API Testing' }

请参阅文档:https://github.com/intuit/karate#get-加号索引

 类似资料:
  • 下面是我在点击特定Web服务时收到的JSON响应: 我不知道哪个索引有我的期望值(我需要在确定哪个具有)后验证多个值),这是动态的。不希望使用硬编码值。并匹配,因为这将在下次更改。 对此我有两个问题: 如何将响应传递给java代码并获取具有的数组索引,以便使用此索引进行验证? 下面的代码不起作用。

  • 我用空手道0.9。5.我正在测试一个返回125MB json响应的endpoint(我知道,不应该在json上这样做——但我现在还停留在这里)。我怎样才能禁止空手道解析响应json,而只是将其视为纯文本?响应需要几毫秒才能完成,但空手道只是挂起尝试解析响应。我不需要验证响应,只需检查200 OK。 谢谢

  • 我试图验证非json格式的错误响应体。我尝试了使用模式以及使用包含匹配的关键字。这对我不起作用。 在post调用中观察到多个匹配时从API返回的实际响应: 我的空手道特点: 尝试*匹配实际的[0] == '#(^partSchema)'也从https://gist.github.com/ptrthomas/2a1e30bcb4d782279019b3d5c10b3ed1。不工作

  • 我一直在验证下面的回答。 当我使用空手道发出获取请求时,我会得到以下响应,我想验证它。 我试过: 它说它不是字符串。你能帮我确认一下这个请求吗?

  • 如何从空手道API中的json响应中检索数值? 在这里我想检索41651625424这个值在一个变量因为我必须通过这作为输入在另一个请求体

  • 我如何将值从空手道API传递到Java类? 正如文档中提到的,我使用了以下代码段从Java API获取响应。但它返回带有未格式化的JSON内容的响应。 然后,我使用以下脚本打印响应。 多谢了。