如何在 scalaj 中 post json 数据?
How do I post json data in scalaj?
我正在使用 scalaj 发出 Http post 请求
如何在 post 数据字段中将纬度、经度和半径作为参数传递
val result = Http("http:xxxx/xxx/xxxxx").postData("""{"latitude":"39.6270025","longitude":"-90.1994042","radius":"0"}""").asString
为什么"""json"""这样传入字符串?
根据文档,postData 函数似乎只接受字节数组和字符串作为参数。
所以这是两个问题。让我们从第二个开始吧。
Why is the string passed in """json""" such a manner?
Scala 允许对多行字符串文字(或包含换行符、引号等的字符串)使用特殊语法。
所以你可以做
val s = """Welcome home!
How are you today?"""
现在回到正题
How can I pass lat, long and radius as arguments in the postData field?
我想你是这种情况:
val lat = "39.6270025"
val long = "-90.1994042"
并且您想将其传递给 postData
函数,与其他一些可能固定的字符串混合。
Scala 提供的另一个功能是所谓的 string interpolation
。
简单的例子
val name = "Mark" // output on the REPL would be: name: String = Mark
val greeting = s"Hello $name!" // output on the REPL would be: greeting: String = Hello Mark!
所以在你的情况下你也可以这样做
val result = Http("http:xxxx/xxx/xxxxx")
.postData(s"""{"latitude":$lat,"longitude":$long,"radius":"0"}""")
.asString
我正在使用 scalaj 发出 Http post 请求
如何在 post 数据字段中将纬度、经度和半径作为参数传递
val result = Http("http:xxxx/xxx/xxxxx").postData("""{"latitude":"39.6270025","longitude":"-90.1994042","radius":"0"}""").asString
为什么"""json"""这样传入字符串?
根据文档,postData 函数似乎只接受字节数组和字符串作为参数。
所以这是两个问题。让我们从第二个开始吧。
Why is the string passed in """json""" such a manner?
Scala 允许对多行字符串文字(或包含换行符、引号等的字符串)使用特殊语法。 所以你可以做
val s = """Welcome home!
How are you today?"""
现在回到正题
How can I pass lat, long and radius as arguments in the postData field?
我想你是这种情况:
val lat = "39.6270025"
val long = "-90.1994042"
并且您想将其传递给 postData
函数,与其他一些可能固定的字符串混合。
Scala 提供的另一个功能是所谓的 string interpolation
。
简单的例子
val name = "Mark" // output on the REPL would be: name: String = Mark
val greeting = s"Hello $name!" // output on the REPL would be: greeting: String = Hello Mark!
所以在你的情况下你也可以这样做
val result = Http("http:xxxx/xxx/xxxxx")
.postData(s"""{"latitude":$lat,"longitude":$long,"radius":"0"}""")
.asString