iT邦幫忙

ktor相關文章
共有 165 則文章
鐵人賽 Software Development DAY 30

技術 Day 30:Ktor 原始碼的總結以及功能

今天是最後一天了,我們來看看這幾天以來,我們都學會了什麼。 首先,在 Day 02 時,我們看過了怎麼開啟一個 embeddedServer 服務,並且看到了使...

鐵人賽 Software Development DAY 29

技術 Day 29:利用 createConfiguration 設置自定義套件參數

自定義套件除了前面所說的,可以設置行為以及事件之外 Ktor 還提供了設置套件參數的方式 根據官網,我們可以看到教學是先定義了參數類別 class Plugin...

鐵人賽 Software Development DAY 27

技術 Day 27:利用 createApplicationPlugin 定義客製化套件

前面我們已經討論過了大多數 Ktor 框架提供的功能。 從 v2.2.0 開始,Ktor 還提供了一個功能,就是允許開發者自己開發客製化的套件。 今天我們來看看...

鐵人賽 Software Development DAY 26

技術 Day 26:webSocket Client 的撰寫以及實作

看完了如何建立一個接收 webSocket 請求的 server 之後 今天,我們來看看如果將 Ktor 當作 Client 端 要透過 webSocket 持...

鐵人賽 Software Development DAY 25

技術 Day 25:定義自己的 Connection 以及存取 DefaultWebSocketSession

今天我們來看看,如果我們要能讓 webSocket 連線和其他的連線互動該怎麼處理 根據官方教學,首先我們要先建立一個自己的 Connection 物件 pac...

鐵人賽 Software Development DAY 24

技術 Day 24:針對 WebSockets Frame 的實作細節

前幾天我們看過了 WebSockets 的引擎實作,使用方式,以及背後的運作邏輯 今天我們來看看 Frame 的實作細節 簽名以及註解 /** * A fra...

鐵人賽 Software Development DAY 23

技術 Day 23:webSocket 的 Frame 以及對應的各個函數

今天我們來看看 webSocket("/echo") 裡面所定義的行為 send("Please enter your name&...

鐵人賽 Software Development DAY 22

技術 Day 22:call.respondWebSocketRaw 的實作以及 RawWebSocket

今天我們來看 call.respondWebSocketRaw 的實作細節 call.respondWebSocketRaw 的實作程式如下 // these...

鐵人賽 Software Development DAY 21

技術 Day 21:Ktor 怎麼安裝 WebSockets 與建立一個 webSocket route

前面二十天,我們看過了 Ktor 怎麼建立專案,怎麼作為 server 回傳資訊,我們看過了怎麼回傳純文字,以及怎麼透過一系列函數生成 HTML 畫面。另外,也...

鐵人賽 Software Development DAY 20

技術 Day 20:用 MultiPartFormDataContent 實作 multipart/form-data 請求

這幾天以來,我們看過了 Ktor 怎麼發送 Get,Post,也看了怎麼傳送 Form Request 今天我們來看看 Ktor 怎麼傳輸檔案,以及背後實作是什...

鐵人賽 Software Development DAY 19

技術 Day 19:用 submitForm 以 FORM DATA 的形式傳遞資料

昨天我們看過了 Ktor 怎麼發送 POST 請求。不過,除了傳送各種不同 HTTP ACTION 以外,有時我們也會需要以其他形式傳送資料 下面我們來看看 K...

鐵人賽 Software Development DAY 18

技術 Day 18:client.post 和 setBody

前幾天,我們看過了 client.get("https://ktor.io/")  怎麼存取第三方 API 並取得資料。 今天,我們要來看看...

鐵人賽 Software Development DAY 16

技術 Day 16:存取第三方 API,HttpClient 和 client.get

時間過了兩週,我們也看了不少 Ktor 可以提供的各種功能。 今天我們來看看 Ktor 框架所提供的另一大塊功能:針對 HTTP Client 開發上所提供的協...

鐵人賽 Software Development DAY 15

技術 Day 15:call.respond 如何轉換回傳內容

昨天我們看過了 val customer = call.receive<Customer>() 這段函數,在 Ktor 裡面是怎麼將 HTML 請...

鐵人賽 Software Development DAY 14

技術 Day 14:call.receive 如何將請求轉換成自定義類別

看過了 Ktor 怎麼安裝 json 相關的套件,今天,我們要來看看實際使用的情況,以及套件會怎麼處理我們撰寫的程式內容。 首先我們定義 com.example...

鐵人賽 Software Development DAY 13

技術 Day 13:json() 如何註冊一個 Json 格式的處理器

昨天我們看過了 ContentNegotiation 的實作。今天,我們來看看 fun Application.configureSerialization()...

鐵人賽 Software Development DAY 12

技術 Day 12:處理 API 輸入輸出格式的 ContentNegotiation

前面幾天,我們看過了 Ktor 的啟動,路由,以及靜態內容和 HTML 畫面的生成。 今天我們來看看另一個後端框架非常基礎的功能:生成 json 格式的 API...

鐵人賽 Software Development DAY 11

技術 Day 11:生成 HTML Body 和 H1 標籤的 body 與 h1

今天,我們一起來看 body { h1 { +"Hello from $name!" } } 這段程式的實作。 我們先來看看 bo...

鐵人賽 Software Development DAY 11

技術 Day 11:生成 HTML Body 和 H1 標籤的 body 與 h1

今天,我們一起來看 body { h1 { +"Hello from $name!" } } 這段程式的實作。 我們先來看看 bo...

鐵人賽 Software Development DAY 11

技術 Day 11:生成 HTML Body 和 H1 標籤的 body 與 h1

今天,我們一起來看 body { h1 { +"Hello from $name!" } } 這段程式的實作。 我們先來看看 bo...

鐵人賽 Software Development DAY 11

技術 Day 11:生成 HTML Body 和 H1 標籤的 body 與 h1

今天,我們一起來看 body { h1 { +"Hello from $name!" } } 這段程式的實作。 我們先來看看 bo...

鐵人賽 Software Development DAY 11

技術 Day 11:生成 HTML Body 和 H1 標籤的 body 與 h1

今天,我們一起來看 body { h1 { +"Hello from $name!" } } 這段程式的實作。 我們先來看看 bo...

鐵人賽 Software Development DAY 10

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

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

鐵人賽 Software Development DAY 9

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

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

鐵人賽 Software Development DAY 8

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

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

鐵人賽 Software Development DAY 7

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

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

鐵人賽 Software Development DAY 6

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

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

鐵人賽 Software Development DAY 5

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

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