emptygif
اللغة: العربية

كل اللغات وأطر العمل

Nim standard library (asynchttpserver) Nim

مقتطف بلغة Nim لـ Nim standard library (asynchttpserver) يستجيب لطلبات /pixel.gif بملف GIF الفارغ، الذي يُفك ترميزه مرة واحدة عند بدء التشغيل.

Nim standard library (asynchttpserver) Nim

الملف
server.nim
التشغيل
nim c -r -d:release server.nim
import std/[asyncdispatch, asynchttpserver, base64]

# Decoded at compile time; a const is also safe to use from the gcsafe callback.
const gif = decode("R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==")

proc handler(req: Request) {.async.} =
  if req.reqMethod == HttpGet and req.url.path == "/pixel.gif":
    let headers = newHttpHeaders({"Content-Type": "image/gif", "Cache-Control": "no-store"})
    await req.respond(Http200, gif, headers)
  else:
    await req.respond(Http404, "Not Found")

let server = newAsyncHttpServer()
waitFor server.serve(Port(8080), handler)

رُوجع مقابل التوثيق الحالي لإطار العمل.

التحقق

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

الموقع الرسمي: Nim standard library (asynchttpserver)