ZIO HTTP Scala
/pixel.gif 요청에 빈 GIF로 응답하는 ZIO HTTP용 Scala 스니펫입니다. GIF는 시작할 때 한 번만 디코딩합니다.
ZIO HTTP 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