Groovy InfluxDB и ошибка почтового запроса

Я пытаюсь сделать POST-запрос из сценария SmartThings, написанного на groovy, и не могу кодировать свои данные в своем почтовом запросе. Я успешно могу записывать данные в InfluxDB с помощью Curl.

Curl

curl -i -XPOST 'http://XX.XXX.XX.XX:8086/write?db=test' --data-binary 'cpu_load_short,host=server01,region=us-west value=0.64 1434055562000000000'

Groovy

  def url = "http://${state.databaseHost}:${state.databasePort}/write?
    db=test"

  def params = [
    uri: "http://${state.databaseHost}:${state.databasePort}/write?db=test",
    body: binaryData,
    contentType: "BINARY",
    requestContentType: "application/octet-stream"
]

try {
    httpPost(params) { resp ->
        log.debug "response data: ${resp.data}"
        log.debug "response contentType: ${resp.contentType}"
    }
} catch (e) {
    log.debug "something went wrong: $e ${url} ${data}"
}

ошибка

e2ca1df2-c29c-4c4f-9c86-ec40735fd18c  12:20:39 AM: debug something went wrong: java.lang.IllegalArgumentException: Don't know how to encode

Если я не закодирую его вообще и не попытаюсь отправить без указания типа контента, я получу

java.lang.IllegalArgumentException: Response does not contain data

0 ответов

Другие вопросы по тегам