Taiwan Kotlin User Group 的網站,在台灣推廣 Kotlin 程式語言,舉辦相關活動。如果對 Kotlin 有興趣,想要多瞭解一些,歡迎來我們的社群一起聚會!
Ktor 是一個 Kotlin 語言的後端框架
由 Kotlin 的開發公司 JetBrains 所建立
可以簡單的建立一個異步(asynchronous)處理的後端伺服器
能異步處理需求的後端框架和語言不少
為什麼要學習 Ktor 呢?
以下我們整理出幾點學習 Ktor 的理由
立基於 Kotlin 語言的特性
我們能很精簡的撰寫出想要的功能
不需要大量的冗餘程式碼。
由於 Ktor 是 Kotlin 語言的開發公司 JetBrains 所建立
所以在和 Kotlin 的搭配
以及 IntelliJ Idea 這個 IDE 上的搭配度都非常的好
透過 Ktor 的設計
不管是建立 API 或者撰寫網頁顯示
都非常的容易使用
比方說,建立 Hello World 的路徑是
get("/hello") {
call.respondText(
"HELLO WORLD!",
contentType = ContentType.Text.Plain
)
}
利用 Kotlin 內建的 coroutine
Ktor 可以很簡單的對需求進行非同步處理
比方說,先存取 http://localhost/path1
不等回傳就繼續存取 http://localhost/path2
等回傳後分別將回傳值存入 firstRequestContent
和 secondRequestContent
val client = HttpClient(CIO)
val firstRequest: Deferred<String> = async { client.get("http://localhost/path1") }
val secondRequest: Deferred<String> = async { client.get("http://localhost/path2") }
val firstRequestContent = firstRequest.await()
val secondRequestContent = secondRequest.await()
想看更多範例嗎?
可以看看
加入 kotlin.tips 的 Kotlin 讀書會
或 kotlin.tips 的 Ktor 練功坊 !