Как только я отправляю данные JSON на url в Grails, как я могу получить доступ к этим данным внутри контроллера?
Получение данных JSON на стороне сервера с Grails
Ответ 1
Grails автоматически анализирует/отменяет JSON, и вы можете получить доступ к нему через request.JSON
в своем контроллере. Возвращаемый объект имеет тип JSONObject
и, таким образом, обеспечивает доступ к свойствам в стиле карты. Вы также можете напрямую использовать этот JSONObject для привязки данных:
def jsonObject = request.JSON
def instance = new YourDomainClass(jsonObject)
Ответ 2
Ознакомьтесь с классами JSON в Grails:
http://grails.org/doc/latest/api/org/codehaus/groovy/grails/web/json/package-frame.html
Например, здесь, как я перебираю список записей JSON в параметре, называемом 'update':
def updates = new org.codehaus.groovy.grails.web.json.JSONArray(params.updates)
for (item in updates) {
def p = new Product()
p.quantity = item.quantity
p.amount = item.amount
p = salesService.saveProductSales(p)
}