Tôi bắt đầu một ứng dụng nhỏ trong trình điều khiển Groovy nhưng tôi không thể làm việc từ tài liệu hướng dẫn cách giữ dữ liệu json đã được gửi trong yêu cầu.Parse json trong Ratpack Groovy
@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}"
}
}
}
Và một yêu cầu ví dụ:
curl -XPOST -H "Content-Type: application/json" -d '{"person":{"name":"Guillaume","age":33,"pets":["dog","cat"]}}' localhost:5050/foo
Tôi đã xem xét gói chuột vì có vẻ như đây có thể là một nền tảng dịch vụ nghỉ ngơi tuyệt vời. Với điều này, điều gì sẽ là cách thành ngữ để đối phó với dữ liệu json được đăng trong groovy? Làm những gì tôi đã làm? – shmish111
phụ thuộc vào việc triển khai. Ở đây bạn đã sử dụng JsonSlurper để phân tích cú pháp tải trọng JSON, cũng có thể được thực hiện bằng cách sử dụng Gson hoặc bất kỳ thư viện JSON nào khác. Trong trường hợp này, điều này là hoàn toàn tốt đẹp để làm việc với cách bạn kết thúc với một đại diện bản đồ của tải trọng. Xem qua [Ratpack API] (http://www.ratpack.io/manual/current/api/) chủ yếu là gói 'ratpack.jackson' nếu nó hữu ích. @ shmish111 – dmahapatro