Ktor Kotlin
Uno snippet Kotlin per Ktor che risponde alle richieste a /pixel.gif con la GIF vuota, decodificata una sola volta all'avvio.
Ktor Kotlin
import io.ktor.http.ContentType
import io.ktor.http.HttpHeaders
import io.ktor.server.engine.embeddedServer
import io.ktor.server.netty.Netty
import io.ktor.server.response.header
import io.ktor.server.response.respondBytes
import io.ktor.server.routing.get
import io.ktor.server.routing.routing
import kotlin.io.encoding.Base64
private val GIF = Base64.decode("R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==")
fun main() {
embeddedServer(Netty, port = 8080) {
routing {
get("/pixel.gif") {
call.response.header(HttpHeaders.CacheControl, "no-store")
call.respondBytes(GIF, ContentType.Image.GIF)
}
}
}.start(wait = true)
}
Abbiamo eseguito questo snippet e confrontato i byte che ha restituito.
Verifica
curl -sI http://localhost:8080/pixel.gif