首页 > 解决方案 > 如何从 SOAPUI 中的 Json 响应中提取子字符串值

问题描述

我正在尝试从作为字符串的消息中获取 requestID。

{
   "version": "1.0.0-80",
   "status": 201,
   "error": "MSG004",
   "uuid": "aae1bb59-da3f-4118-a4a4-asdfsdfsd",
   "message": "Successfully created a request with an id of 1234",
   "path": "/api/request/",
   "timestamp": "2019-03-21T09:41:58.484"
}

谁能帮我从消息中创建一个属性,我只需要在这句话的末尾传递请求 ID:

“成功创建了一个 id 为 1234 的请求”

谢谢

标签: groovysoapui

解决方案


使用直接的子字符串应该可以解决问题。

def id = variableThatContainsTheString.substring(46)

然而,这并不漂亮。但是,您正在测试的解决方案也不是。

我会争辩说,如果 ID 是 Web 服务的消费者应该使用的东西,那么它真的应该以它自己的键值来传递。应该没有必要把它从一根绳子上剪下来。

响应可能是这样的:

{ 
  "version": "1.0.0-80",
  "status": 201, 
  "error": "MSG004", 
  "uuid": "aae1bb59-da3f-4118-a4a4-asdfsdfsd", 
  "message": "Successfully created a request with an id of 1234", 
  "path": "/api/request/", 
  "timestamp": "2019-03-21T09:41:58.484",
  "id": "1234" 
}

告诉开发人员齐心协力。;-)


推荐阅读