HTTP-запрос Post в Scala с использованием переменных в теле JSON

Я пытаюсь сделать HTTP-запрос Post в Scala, который использует тело JSON, например:

{
    "x": "hello",
    "y": "goodbye",
    "z": "hi"
}

где я сохраняю "привет" и "до свидания" в переменных, которые передаю функции, выполняющей запрос.

Я не могу понять, как отформатировать тело JSON, чтобы поместить его в .postDataчасть запроса. Было бы что-то вроде:

val a = "hello"
val b = "goodbye"

val request = Http(url).postData("{"x" = "${a}", "y" = "${b}", "z" = "hi"}")
    .header("content-type", "application/json")

У меня конкретный вопрос, как отформатировать эту часть:

postData("{"x" = "${a}", "y" = "${b}", "z" = "hi"}")

1 ответ

Напишите ответ в формате ниже:

val a = "hello"
val b = "goodbye"

val responseData =
  s"""
     | {"x": ${a},
     | "y": ${b},
     | "z": "hi"
     |}""".stripMargin


val request = Http("url").postData(responseData).header("content-type", "application/json").option(HttpOptions.method("POST"))
Другие вопросы по тегам