【问题标题】:Unable to Extract value from JSON response which has the data in "\"无法从“\”中包含数据的 JSON 响应中提取值
【发布时间】:2021-11-14 23:32:59
【问题描述】:

请帮助我解决我面临的问题。我有这样的 JSON 响应:

"{"Version":10,"Collections":[{"Id":"*******","Name":"","Description":null,"IsValid":false,"ABC":"\\XYZ\\collection\\","C

并且想要获取具有 n 个 Id 但 JSON 提取器在这里不起作用的集合的值。

【问题讨论】:

  • 您能否提供一个示例 JSON 响应?理想情况下,应该在发布之前验证 JSON。此外,您应该很好地格式化问题中的 JSON。

标签: json jmeter


【解决方案1】:
  1. Don't post text as image 否则即使是那些愿意提供帮助的人也不会重新输入您的代码或使用 OCR 软件来重现您的问题
  2. 您向我们展示的不是有效的 JSON,您可以使用离线或在线 JSON Lint Tool 自行检查,因此您将无法为此使用 JSON 提取器。

如果您将转义的 JSON 作为某些 JSON 属性的一部分,比如这个:

{
  "some-attribute": "{\"foo\":\"bar\"}"
}

您不会直接获得此 bar 值,因此您需要分两步完成:

  1. 使用第一个 JSON 提取器获取 some-attribute 的值
  2. 使用第二个 JSON 提取器获取 foo 属性的值

演示:

更多信息:API Testing With JMeter and the JSON Extractor

【讨论】:

  • 感谢德米特里的建议。以后会好好照顾的。恕我直言,我尝试了您的建议,但没有运气: Collections=NOT FOUND Collections_matchNr=0 Id=NOT FOUND Id_matchNr=0
  • "{\"Version\":10,\"Collections\":[{\"Id\":\"************\",\ "名称\":\"*****\",\"描述\":null,\"IsValid\":false,\"ABC\":\"\\\\XYZ\\\\collection\ \\\\",\"C----这样,我有JSON
  • 不是“JSON”,JSON 从{[ 开始。
  • 你提到我的网站说“有效的 JSON”
  • 它正在工作。使用正则表达式提取器 PostProcessor 获取像这样的 id 值:"Id.":."(.+?).",."Name 感谢您的帮助!
猜你喜欢
  • 2017-07-30
  • 2013-01-19
  • 2019-04-17
  • 1970-01-01
  • 1970-01-01
  • 2023-03-04
  • 2022-01-22
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多