在Scala中使用JSON正文中的变量进行HTTP Post请求

在Scala中使用JSON正文中的变量进行HTTP Post请求,json,scala,post,scalaj-http,Json,Scala,Post,Scalaj Http,我尝试在Scala中发出HTTP Post请求,该请求使用JSON正文,例如: { "x": "hello", "y": "goodbye", "z": "hi" } 在这里,我将“hello”和“再见”存储在变量中,我将这些变量传递给发出请求的函数 我不知道如何格式化JSON正文以放入请求的.postData部分。 会不会是这样的: val a = "hello" val b = "goodbye" val request = Http(url).postData(

我尝试在Scala中发出HTTP Post请求,该请求使用JSON正文,例如:

{
    "x": "hello",
    "y": "goodbye",
    "z": "hi"
}
在这里,我将“hello”和“再见”存储在变量中,我将这些变量传递给发出请求的函数

我不知道如何格式化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"}")

以以下格式写入响应:

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"))