iT邦幫忙

鐵人檔案

2023 iThome 鐵人賽
回列表
Software Development

深入解析 Kotlin 專案 Ktor 的程式碼,探索 Ktor 的強大功能 系列

深入探索 Kotlin 所撰寫網頁後端框架 Ktor 的程式碼,揭開其強大功能。文章深入分析 Ktor 的核心架構、異步程式等等,幫助您更了解如何運用 Ktor 開發現代 Web 應用程式,以及更理解 Ktor 開發者如何設計一個網頁後端框架。

鐵人鍊成 | 共 30 篇文章 | 9 人訂閱 訂閱系列文 RSS系列文 團隊捲土重來的Kotlin鐵人們
DAY 1

Day 01:不是寫 Kotlin,而是讀 Kotlin

在 2020 年時,我們透過 最好用的非同步網頁框架!開始用 Ktor 寫 Kotlin Server 這一系列文章,介紹了如何用 Kotlin 程式語言,搭配...

2023-09-15 ‧ 由 ReccaChao 分享
DAY 2

Day 2:開始一個 server 服務:embeddedServer().start()

第一天開始,首先我們來一起看看 Ktor 是怎麼開始一個 server 服務的。 要開始研究這個事情,首先我們要先看看 Ktor 框架內的程式碼怎麼撰寫。 我們...

2023-09-16 ‧ 由 ReccaChao 分享
DAY 3

Day 03:設置路由 `Application.configureRouting()`

看過了 embeddedServer().start(),我們接著來看看 Ktor 是如何設置 Route 的 首先我們看到 embeddedServer()...

2023-09-17 ‧ 由 ReccaChao 分享
DAY 4

Day 04:建立路徑,來看看 get() 函數

昨天我們看過了預設程式碼內 routing() 的實作 routing { get("/") { call.respondText(&...

2023-09-18 ‧ 由 ReccaChao 分享
DAY 5

Day 05:路由元素的分析,看 route() 後半段的實作內容

昨天看過了 route() 的實作內 val selector = HttpMethodRouteSelector(method) 裡面的邏輯。 今天,我們來...

2023-09-19 ‧ 由 ReccaChao 分享
DAY 6

Day 06:處理回傳的內容,call.respondText() 前段

今天我們來看看 call.respondText("Hello World!") 這段函數,是怎麼協助我們建立一個回應內容的。 我們先看到...

2023-09-20 ‧ 由 ReccaChao 分享
DAY 7

Day 07:call.respondText() 後段:如何使用協程善用資源

今天我們來看 call.respondText() 後段,也就是 respond(message) 怎麼將訊息傳遞出去。 respond(message) 實作...

2023-09-21 ‧ 由 ReccaChao 分享
DAY 8

Day 08:用 staticFiles() 處理靜態檔案

看了 Ktor 預設提供的程式怎麼實作的之後,我們開始看看撰寫其他功能的背後實作。 首先,我們來看看如果要處理靜態檔案, Ktor 要怎麼做。 Ktor 可以使...

2023-09-22 ‧ 由 ReccaChao 分享
DAY 9

Day 09:生成 HTML 內容的 call.respondHtml()

看了怎麼處理靜態檔案之後,今天我們來看網頁後端服務必備的一個項目:處理網頁畫面 Ktor 允許一種處理方式,稱為 HTML DSL(Domain-Specifi...

2023-09-23 ‧ 由 ReccaChao 分享
DAY 10

Day 10:從 head title 等函數窺探神通廣大的 HTMLTag 物件

昨天看過了 call.respondHtml 的實作之後,今天我們來看看 val name = "Ktor" head { title {...

2023-09-24 ‧ 由 ReccaChao 分享