tool_name = 'test
product_name = 'test'
platform_name = 'test'
def my_json = new JsonBuilder()
def root = my_json name: tool_name, product: product_name, platform: platform_name
print my_json
我做错了什么?我正在尝试创建一个非常基本的(平面)json对象,以便稍后发送POST请求。
类似的东西:
{'name': 'test', 'product': 'test', 'platform': 'test'}
最简单的方法是什么?我可以使用JsonBuilder或Slurper吗?我对groovy完全不熟悉。
答案 0 :(得分:2)
您只需使用Map
并使用groovy.json.JsonOutput.toJson()
辅助方法将其渲染为JSON,例如
def tool_name = 'test'
def product_name = 'test'
def platform_name = 'test'
def map = [name: tool_name , product: product_name , platform: platform_name]
def json = groovy.json.JsonOutput.toJson(map)
println json
此示例生成以下输出:
{'name': 'test', 'product': 'test', 'platform': 'test'}
如果您想使用groovy.json.JsonBuilder
,则下面的示例会产生您的预期输出:
def tool_name = 'test'
def product_name = 'test'
def platform_name = 'test'
def builder = new groovy.json.JsonBuilder()
builder {
name tool_name
product product_name
platform platform_name
}
println builder.toString()
groovy.json.JsonSlurper
类专门用于读取JSON文档并在需要时对其进行操作。