emptygif
Lingua: Italiano

Tutti i linguaggi e framework

vibe.d D

Uno snippet D per vibe.d che risponde alle richieste a /pixel.gif con la GIF vuota, decodificata una sola volta all'avvio.

vibe.d D

File
server.d
Esegui
dub run --single server.d
/+ dub.sdl:
    name "pixel"
    dependency "vibe-d" version="~>0.10"
+/
import vibe.vibe;

immutable ubyte[] gif = [0x47, 0x49, 0x46, 0x38, 0x39, 0x61, 0x01, 0x00, 0x01, 0x00, 0x80, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x21, 0xf9, 0x04, 0x01, 0x00, 0x00, 0x00, 0x00, 0x2c, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x02, 0x02, 0x44, 0x01, 0x00, 0x3b];

void pixel(HTTPServerRequest req, HTTPServerResponse res) @safe
{
    res.headers["Cache-Control"] = "no-store";
    res.writeBody(gif, "image/gif");
}

void main()
{
    auto router = new URLRouter;
    router.get("/pixel.gif", &pixel);

    auto settings = new HTTPServerSettings;
    settings.port = 8080;
    auto listener = listenHTTP(settings, router);
    scope (exit) listener.stopListening();

    runApplication();
}

Verificato rispetto alla documentazione attuale del framework.

Verifica

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

Sito ufficiale: vibe.d