Rest 如何处理重新响应

Rest 如何处理重新响应,rest,grails,Rest,Grails,我有一个Response resp,看起来像这样的文本: resp.text = [{"class":"org.strotmann.bic.BankIdentCode","id":1,"bankname":"Sparkasse Aachen","bic":"AACSDE33XXX","blz":39050000,"ort":"Aachen","plz":52059},{"class":"org.strotmann.bic.BankIdentCode","id":2,"bankname":"Aar

我有一个Response resp,看起来像这样的文本:

resp.text = [{"class":"org.strotmann.bic.BankIdentCode","id":1,"bankname":"Sparkasse Aachen","bic":"AACSDE33XXX","blz":39050000,"ort":"Aachen","plz":52059},{"class":"org.strotmann.bic.BankIdentCode","id":2,"bankname":"Aareal Bank","bic":"AARBDE5W100","blz":10010424,"ort":"Berlin","plz":10666},{"class":"org.strotmann.bic.BankIdentCode","id":3,"bankname":"Aareal Bank Zw L","bic":"AARBDE5W108","blz":51010800,"ort":"Wiesbaden","plz":65011},{"class":"org.strotmann.bic.BankIdentCode","id":4,.........]
我想访问它的组件

"id":1,"bankname":"Sparkasse ....
"id":2,"bankname":"Aareal 
每个组件都有一个
getAt(“bankname”)
来获取其值

我可以使用哪些方法

彼得
德国多特蒙德

您可以使用
JSONArray
JSONObject

JSONArray array = new JSONArray(textResponse);
并使用
array.getJSONObject(index)
获取
JSONObject
array.length()
获取元素数

JSONObject jsonObject = array.getJSONObject(0);
String bankname = jsonObject.getString(bankname);
int id = jsonObject.getInt(id);

如果您使用的是Grails/Groovy,则可以使用以下内容:

def resp = grails.converters.JSON.parse(response)

那么,通过相应的id和银行名访问您的最终问题是什么?您在解析json时遇到问题,还是希望构建一些映射来存储结果?如果您使用的是rest客户端生成器,则使用
resp.json
而不是
resp.text
,然后可以执行
resp.json.collect{it.bankName}
来获取所有银行名称(例如)。这不是rest响应,因为它不包含链接。客户端不应该知道任何有关URI结构的信息,他们应该获得与URI或URI模板的链接。。。