首页 > 解决方案 > Kotlin:Ktor 如何将文本响应为 html

问题描述

我想使用库kotlin-html来生成 html 而不是 kotlinx.html。这个库只生成一个 html 文本:

p("A paragraph").render()
// => <p>A paragraph</p>

但我找不到如何使用 Ktor 响应 html 而不是文本

fun Routing.root() {
    get("/") {
        call.respondText {"<p>A paragraph</p>"}
    }
}

此代码将生成一个带有文本<p>A paragraph</p>而不是 html-page 的页面。而且似乎call.respondHtml只适用于 kotlinx.html DSL。如何使用纯文本执行此操作?

标签: kotlinktor

解决方案


您可以将参数指定ContentType.Text.HtmlContentTyperespondText

call.respondText("<p>foo</p>", ContentType.Text.Html)

ContentType.Text.Plain如果不提供,则默认使用ContentType


推荐阅读