非常值得庆祝的是,Ktor 1.0 正式发布了,Ktor 中文站也已更新。
Ktor 是 JetBrains 官方出品的互联应用框架。 使用该框架非常易于开发异步的服务器与客户端,并且能够充分利用 Kotlin 以及协程的优势。
Ktor 中文站是官方英文站的中文翻译(目前还在翻译中,欢迎组团一起)。 初学者可以从快速入门入手来学习与了解 Ktor,这一章大多数内容均已翻译。
上周六,有幸在 JetBrains 开发者日上分享了《Ktor——Kotlin 多平台异步 Web 框架实践》 ,这两天也把讲稿及相关 demo 整理了下。
讲稿可在这里下载:
链接: https://share.weiyun.com/5UqjtTc
密码: eauq37我猜你还想看 Benny 分享的讲稿,传送门在这里:2018 JetBrains 开发者大会见闻
这份讲稿比当天用的那份要新一些(其中的截图也能看出是 11 月 20 日的),补充了当场提到但没有在讲稿中列出的 Ktor 适用场景: 多平台项目,同时开发客户端与服务端,比如同时开发 WebSocket 或者直接套接字通讯的客户端与服务器。
CallID 与 Call Logging MDC 的 demo 在这里:
https://github.com/hltj/ktor-callid-demo
接口聚合服务 demo 在这里:
https://github.com/hltj/kaggregator-demo
最后出场的这个是原打算在分享中讲的开源缩略图服务 Kthumbor,终于完成了第一个可用版。服务框架使用 Ktor,100% Kotlin 开发,见下图:
另外,在 Kthumbor 项目中采用了测试驱动开发的方式(其中测试框架使用的是 KotlinTest),先写测试用例后写实现。 目前只实现了最简单的生成指定宽高内的缩略图的功能,后续还会实现放大、剪裁等功能,最终会实现一个生产级可用的缩略图服务。
Kthumbor 的源代码在这里:
https://github.com/hltj/kthumbor
欢迎反馈与交流。 需要说明的一点是,我并不想做纯雷锋,该项目采用 AGPL-3.0 协议发布,因此可以用于商业目的,但是任何修改都需要以同样协议(AGPL-3.0)开源出来。
关于分享中讲到的点以及 Kthumbor 项目,有机会再展开来看。
相关推荐
Ktor is a framework for quickly creating web applications in Kotlin with minimal effort. import io.ktor.server.netty.* import io.ktor.routing.* import io.ktor.application.* import io.ktor.http.* ...
Ktor: Moshi The Moshi feature allows you to handle JSON content in your application easily using the Moshi library. This feature provides a ContentNegotiation converter. Usage Install the feature by ...
KTor的现成样品集合。
ktor-utils-1.0.1.jar
ktor-network-1.0.1.jar
关于如何在ktor应用程序流中包含jwt的一个简单但略为详细的示例。
Kotlin整合SpringBoot+Ktor+Ktorm整合源码,旨在提供对框架整合与思路,可自行改造。博客地址:https://blog.csdn.net/u010766458/article/details/96875504
ktor是一个在kotlin中快速创建web应用程序的框架。
ktor-init-tools 一组用于创建Ktor项目的工具。 这包括: 为Ktor项目生成共享了MPP库。 一个用于将Ktor项目生成为ZIP文件客户端的网站(Kotlin-JS) 。 生成Ktor项目(Kotlin-JVM)的IntelliJ插件。 代码生成...
使用Ktor创建HTTP API 该存储库是与动手实验“ 相对应的代码。
ktor-client-okhttp 这个库是一个的引擎包装 。 像其他ktor-client引擎一样,所需要做的就是将其插入到HttpClient如下所示: val client = HttpClient ( OkHttp ) Gradle依赖 repositories { jcenter() } ...
Ktor Graphql 与Ktor一起通过HTTP轻松提供GraphQL。安装: 该项目托管在Maven Central(从2.0.3版开始)上。 查看包装添加依赖项:玛文<dependency> <groupId>...
Ktor是用于创建微服务,Web应用程序等的异步框架。 从头开始写在Kotlin。 import io.ktor.server.netty.* import io.ktor.routing.* import io.ktor.application.* import io.ktor.http.* import io.ktor.response....
Ktor:ZipkinIds功能 可参与分布式跟踪的安装功能。 你为什么要这个? 您正在Ktor中构建微服务,并希望使用Zipkin对其进行检测以进行跟踪。 它有什么作用? 传入标题 该功能读取传入的HTTP跟踪标头,可以是多个...
Ktor权限 使用身份验证功能为Ktor提供简单的路由权限。 用法 首先定义您的权限,可以是任何东西:字符串,枚举,密封类。 enum class Permission { GLOBAL , VIEW_DATA , EDIT_DATA , } 接下来配置,和...
Ktor单页应用程序功能 可安装的功能,可在Ktor中轻松处理SPA! 写在Kotlin与 :red_heart: 用法 只需使用以下命令在您的应用程序中安装该功能: install( SinglePageApplication ) 默认情况下,该应用是从捆绑...
ktor-demo:@byCaelis的Ktor教程
Framework for quickly creating connected applications in Kotlin with minimal effort
基于Solidity+Ktor+Vue+IPFS的数字版权管理系统源码+详细文档+全部资料.zip基于Solidity+Ktor+Vue+IPFS的数字版权管理系统源码+详细文档+全部资料.zip基于Solidity+Ktor+Vue+IPFS的数字版权管理系统源码+详细文档+...
ktor的GraphQL功能GraphQL功能对于使用。 它类似于 。功能 :check_mark: 查询 :check_mark: 变异 :check_mark: 订阅内容 :check_mark: 自定义上下文 :check_mark: 自定义端点(用于graphql和订阅)如何使用Gradle: ...