emptygif
語言: 繁體中文

所有語言和框架

ZIO HTTP Scala

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

ZIO HTTP Scala

安裝
libraryDependencies += "dev.zio" %% "zio-http" % "3.11.6"
檔案
Main.scala
import zio.*
import zio.http.*

object Main extends ZIOAppDefault:
  private val gif = Chunk.fromArray(java.util.Base64.getDecoder.decode("R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=="))

  private val routes = Routes(
    Method.GET / "/pixel.gif" -> handler(
      Response(
        headers = Headers(Header.ContentType(MediaType.image.gif), Header.CacheControl.NoStore),
        body = Body.fromChunk(gif),
      )
    )
  )

  override val run = Server.serve(routes).provide(Server.defaultWithPort(8080))

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

驗證

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

官方網站: ZIO HTTP

更多 Scala 範例