Apache Pekko HTTP Scala
Apache Pekko HTTP کے لیے Scala کا اسنیپٹ جو /pixel.gif کی درخواستوں کا جواب خالی GIF سے دیتا ہے، جسے اسٹارٹ اپ پر ایک بار ڈیکوڈ کیا جاتا ہے۔
Apache Pekko HTTP Scala
import org.apache.pekko.actor.typed.ActorSystem
import org.apache.pekko.actor.typed.scaladsl.Behaviors
import org.apache.pekko.http.scaladsl.Http
import org.apache.pekko.http.scaladsl.model.{HttpEntity, MediaTypes}
import org.apache.pekko.http.scaladsl.model.headers.`Cache-Control`
import org.apache.pekko.http.scaladsl.model.headers.CacheDirectives.`no-store`
import org.apache.pekko.http.scaladsl.server.Directives.*
@main def pixelServer(): Unit =
given ActorSystem[Nothing] = ActorSystem(Behaviors.empty, "pixel")
val gif = HttpEntity(MediaTypes.`image/gif`, java.util.Base64.getDecoder.decode("R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=="))
val route =
path(separateOnSlashes("/pixel.gif".stripPrefix("/"))) {
get {
respondWithHeader(`Cache-Control`(`no-store`)) {
complete(gif)
}
}
}
Http().newServerAt("0.0.0.0", 8080).bind(route)
ہم نے یہ اسنیپٹ چلایا اور اس کی لوٹائی ہوئی بائٹس کا موازنہ کیا۔
جانچیں
curl -sI http://localhost:8080/pixel.gif