http4k Kotlin
一个用于 http4k 的 Kotlin 代码片段,以空 GIF 响应对 /pixel.gif 的请求,GIF 在启动时只解码一次。
http4k Kotlin
import org.http4k.core.Method.GET
import org.http4k.core.MemoryBody
import org.http4k.core.Response
import org.http4k.core.Status.Companion.OK
import org.http4k.routing.bind
import org.http4k.routing.routes
import org.http4k.server.SunHttp
import org.http4k.server.asServer
import java.util.Base64
private val GIF = Base64.getDecoder().decode("R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==")
val app = routes(
"/pixel.gif" bind GET to {
Response(OK)
.header("Content-Type", "image/gif")
.header("Cache-Control", "no-store")
.body(MemoryBody(GIF))
},
)
fun main() {
app.asServer(SunHttp(8080)).start()
}
我们运行了此代码片段,并比对了它返回的字节。
验证
curl -sI http://localhost:8080/pixel.gif