我有一些代码需要将grails中的地图转换为JSON。我使用grails转换器将map转换为JSON对象,如下所示:
def map=[:].withDefault { [] }
...
def users=service?.staff.each{map<<[(it.id):it.firstName+" "+it.lastName]}
render map as JSON
如果地图是空的,我在转换后得到了这个[:]如果我试图使用$ .parseJSON解析我得到了以下错误
JSON.parse: unexpected character
如果地图不是空的,我得到“[2:'Feras Odeh']”作为json对象,如果我试图解析我得到了
JSON.parse: expected ',' or ']' after array element
我该如何解决这个问题?
答案 0 :(得分:0)
import grails.converters.*;
...
List users = service?.staff.collect{[it.id: "${it.firstName} ${it.lastName}"]}
render(users as JSON)