从JSON对象中提取字符串 - REST保证

时间:2014-09-15 21:41:56

标签: java json rest rest-assured

我有一个来自API的JSON响应,格式如下:

{
    "Sample String 1"
    "Sample String 2"
}

我可以使用

在Response对象中获取响应
String response = get("/url").asString();

我将回复视为

{
    String1,
    String2
}

有没有办法只使用任何REST Assured方法(即String1和String2)将有效字符串提取到没有附加大括号的集合中?文档提到可以使用节点名称提取值,但在这种情况下,JSON响应只是字符串的集合。

1 个答案:

答案 0 :(得分:1)

那是无效的JSON。但是如果你真的想把它变成一个String数组,你可以这样做:

String str = "{ String1, String2 }"
String[] arr = str
    .replace('{','') // Get rid of left brackets
    .replace('}','') // Get rid of right brackets
    .replace(' ','') // Get rid of spaces
    .split(',');     // Split on commas

哪个应该给你一个像[" String1"," String2"]

的数组

请注意,上面的代码不是最强大或最有效的方法(甚至不是关闭)。您应该尝试获取有效的JSON响应并使用像JackSON或GSON这样的已知解析器。但是如果你真的只是想按原样解析它,那应该可行。