Ktor 是一个基于Kotlin的使用最小的代价,快速创建一个web应用程序的框架。
import org.jetbrains.ktor.netty.* import org.jetbrains.ktor.routing.* import org.jetbrains.ktor.application.* import org.jetbrains.ktor.host.* import org.jetbrains.ktor.http.* import org.jetbrains.ktor.response.* fun main(args: Array<String>) { embeddedServer(Netty, 8080) { routing { get("/") { call.respondText("Hello, world!", ContentType.Text.Html) } } }.start(wait = true) }
在
localhost:8080
运行嵌入式web服务当根路径接收到GET方式的http请求时。配置路由并响应
Hello, world!
。
Unopinionated
Ktor 框架没有强制要求在工程中是 使用 – 日志,模版,消息,预处理,序列化,依赖注入等等技术。 有时候它可能需要实现一个简单的接口。但一般情况下主要是写转移或拦截函数。 这些特性通过同一的拦截机制(可以搭建任意的管道)进行配置。
Ktor 应用可以部署在任何支持 Servlet 3.0+ API 的servlet容器就像是Tomcat,或是独立的使用 Netty 或 Jetty。 可以通过添加一致的主机API来支持其他类型的主机。
Ktor APIs大多数函数都通过lambda表达式进行调用。感谢 Kotlin 的 DSL 功能, 代码看起来像是说明。应用的组织完全由开发者来选择 – 函数或类,使用依赖注入框架或是所有的功能都在main函数中实现。
可测试
Ktor 应用可以部署在特殊的测试环境,一定程度上模拟web服务,而不需要网络操作 。它提供了简单的程序测试方式,没有模拟太多的东西。但在验证程序调用的时候,仍然能达到很好的性能。在真实的嵌入式Web服务器中进行集成测试,当然也是可以的。
ktor.io 的快速开始以及过于特性、使用、机制的详细解释。
Getting started with Maven
Kotlin web 框架,像是 Wasabi 和 Kara,现在已经弃用了。
Github地址:<a target="_blank title=" null"="" href="https://github.com/Kotlin/ktor" style="word-wrap: break-word; color: rgb(59, 67, 72);">Ktor web 框架
共同学习,写下你的评论
评论加载中...
作者其他优质文章