Ktor/建立 json response
< Ktor
除了纯文字的回传之外,我们通常会想回传特定格式的资料。在现代的 API 内,多数会是以 json 格式设定我们的 API
下面我们就来建立一个回传 json 的 API
连线 http://127.0.0.1/snippets 时,会回传一个 json object
{
"OK": true
}
设置 auto import
编辑要能回传 json 格式的资料,我们需要安装新的套件
安装套件之前,我们先将 IntelliJ Idea 的 auto import 打开
我们打开 Preferences... > Build, Execution, Deployment > Gradle
点开视窗之后,我们勾选里面的“Automatically import this project on changes in build script files” 然后点视窗右下方的“Apply”
这样,之后我们更新 build.gradle 档案时,就会自动安装套件了
安装 jackson 套件
编辑设置好了之后,我们来安装所需要的套件
这里我们选择 jackson 套件来处理 json 格式的输出
在 build.gradle 里面,我们找到 dependencies 区块,在里面加上
implementation "io.ktor:ktor-jackson:$ktor_version"
加了之后,因为我们加上了 auto import,所以 IDE 现在会自动处理这个套件
撰写 API
编辑现在可以撰写 API 了
在 Application.kt 前面先 import 两组套件
import io.ktor.jackson.*
import io.ktor.features.*
然后加上
routing {
get("/snippets") {
call.respond(mapOf("OK" to true))
}
}
现在我们连线到 http://127.0.0.1/snippets 时,就可以成功地看到回传的 json object 了
{
"OK": true
}