Я отказался от HTTPBuilder в своем приложении Grails (по крайней мере для POST) и использовал предложенный метод *1002* здесь .
(Имейте в виду, что если вы используете прямойGroovy вне приложения Grails, методы де / кодирования JSON будут отличаться от приведенных ниже)
Просто замените тип контента на application/json
в следующих строках sendHttps()
httpPost.setHeader("Content-Type", "text/xml")
...
reqEntity.setContentType("text/xml")
Вы также будете нести ответственность за упорядочение данных JSON
import grails.converters.*
def uploadContact(Contact contact){
def packet = [
person : [
first_name: contact.firstName,
last_name: contact.lastName,
email: contact.email,
company_name: contact.company
]
] as JSON //encode as JSON
def response = sendHttps(SOME_URL, packet.toString())
def json = JSON.parse(response) //decode response
// do something with json
}