Hello World 的應用

組態

首先,建立一個名為 Package.swift 的檔案。這是告訴 swift 編譯器庫所在位置的檔案。在這個 hello world 示例中,我們使用 GitHub repos。我們需要 KituraHeliumLogger。將以下程式碼放在 Package.swift 中。它將專案的名稱指定為 kitura-helloworld 以及依賴 URL。

import PackageDescription
let package = Package(
    name: "kitura-helloworld",
        dependencies: [
            .Package(url: "https://github.com/IBM-Swift/HeliumLogger.git", majorVersion: 1, minor: 6),
            .Package(url: "https://github.com/IBM-Swift/Kitura.git", majorVersion: 1, minor: 6) ] )

接下來,建立一個名為 Sources 的資料夾。在裡面,建立一個名為 main.swift 的檔案。這是我們為此應用程式實現所有邏輯的檔案。在此主檔案中輸入以下程式碼。

匯入庫並啟用日誌記錄

import Kitura
import Foundation
import HeliumLogger

HeliumLogger.use()

新增路由器 Router 指定 HTTP 請求的路徑,型別等。這裡我們新增一個 GET 請求處理程式,它列印 Hello world ,然後是一個 post 請求,它從請求中讀取純文字然後將其發回。

let router = Router()

router.get("/get") {
    request, response, next in
    response.send("Hello, World!")
    next()
}

router.post("/post") {
    request, response, next in
    var string: String?
    do{
        string = try request.readString()
        
    } catch let error {
        string = error.localizedDescription
    }
    response.send("Value \(string!) received.")
    next()
}

指定執行服務的埠

let port = 8080

將路由器和埠繫結在一起,並將它們新增為 HTTP 服務

Kitura.addHTTPServer(onPort: port, with: router)
Kitura.run()

執行

使用 Package.swift 檔案和 Resources 資料夾導航到根資料夾。執行以下命令。Swift 編譯器會自動將 Package.swift 中提到的資源下載到 Packages 資料夾中,然後使用 main.swift 編譯這些資源

swift build

構建完成後,可執行檔案將放置在此位置。雙擊此可執行檔案以啟動伺服器。

.build/debug/kitura-helloworld

驗證

開啟瀏覽器,輸入 localhost:8080/get 作為 url 並按 Enter 鍵。Hello World 頁面應該出來了。

StackOverflow 文件

開啟 HTTP 請求應用程式,將純文字釋出到 localhost:8080/post。響應字串將正確顯示輸入的文字。

StackOverflow 文件