emptygif
語言: 繁體中文

所有語言和框架

Hummingbird Swift

適用於 Hummingbird 的 Swift 程式碼片段,以空 GIF 回應對 /pixel.gif 的請求,GIF 在啟動時只解碼一次。

Hummingbird Swift

安裝
.package(url: "https://github.com/hummingbird-project/hummingbird.git", from: "2.0.0")
檔案
App.swift
執行
swift run
import Hummingbird

let gif = ByteBuffer(bytes: [0x47, 0x49, 0x46, 0x38, 0x39, 0x61, 0x01, 0x00, 0x01, 0x00, 0x80, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x21, 0xf9, 0x04, 0x01, 0x00, 0x00, 0x00, 0x00, 0x2c, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x02, 0x02, 0x44, 0x01, 0x00, 0x3b] as [UInt8])

@main
struct App {
    static func main() async throws {
        let router = Router()
        router.get("/pixel.gif") { _, _ in
            Response(
                status: .ok,
                headers: [.contentType: "image/gif", .cacheControl: "no-store"],
                body: .init(byteBuffer: gif)
            )
        }
        let app = Application(
            router: router,
            configuration: .init(address: .hostname("0.0.0.0", port: 8080))
        )
        try await app.runService()
    }
}

我們執行了這段程式碼,並比對了它回傳的位元組。

驗證

curl -sI http://localhost:8080/pixel.gif

官方網站: Hummingbird

更多 Swift 範例