我是 Ktor 的新手,我正在尝试构建一个处理登录凭据的后端。我正在尝试使用内容协商功能将 JSON 转换为本机 Kotlin 对象,但我不断收到不受支持的媒体类型异常。这是我的代码:
fun Application.main() {
install(CallLogging)
install(DefaultHeaders)
install(ContentNegotiation) {
register(ContentType.Application.Json, GsonConverter())
}
routing {
get("/") {
call.respondHtml {
head {
title("Kotlin Webapp")
script {
type = ScriptType.textJScript
src = "main.bundle.js"
}
}
body {
div {
id = "root"
}
}
}
}
post("/login") {
val credentials = call.receive<Credentials>()
println(credentials)
}
}
}
data class Credentials(val username: String, val password: String)
这是我正在尝试转换的传入 Json,我通过 XMLHttpRequest 发送:
{"username":"Jamdan2","password":"sometext"}
我在网上搜索了答案,但找不到我做错了什么。有人可以帮忙吗?