I started a small ratpack app in the Groovy console but I couldn't work out from the documentation how to get a hold of json data that has been sent in the request.
@Grab("io.ratpack:ratpack-groovy:0.9.4")
import static ratpack.groovy.Groovy.*
import groovy.json.JsonSlurper
ratpack {
handlers {
get {
def slurper = new JsonSlurper()
def result = slurper.parseText('{"person":{"name":"Guillaume","age":33,"pets":["dog","cat"]}}')
render "Hello world! ${result.person}"
}
post("foo") {
def slurper = new JsonSlurper()
def result = slurper.parseText("WHAT DO i PUT HERE?")
render "Hello world! ${result.person}"
}
}
}
And an example request:
curl -XPOST -H "Content-Type: application/json" -d '{"person":{"name":"Guillaume","age":33,"pets":["dog","cat"]}}' localhost:5050/foo