அனைத்து மொழிகளும் ஃப்ரேம்வொர்க்குகளும்
Scotty Haskell
/pixel.gif க்கு வரும் ரெக்வெஸ்ட்களுக்கு empty GIF மூலம் பதிலளிக்கும், Scotty க்கான Haskell ஸ்னிப்பெட். GIF ஸ்டார்ட்அப்பில் ஒருமுறை மட்டுமே டீகோட் செய்யப்படுகிறது.
Scotty Haskell
{-# LANGUAGE OverloadedStrings #-}
import qualified Data.ByteString.Base64 as Base64
import qualified Data.ByteString.Lazy as BL
import qualified Data.Text.Lazy as TL
import Web.Scotty
-- A top-level constant: decoded once, on first use.
gif :: BL.ByteString
gif = BL.fromStrict (Base64.decodeLenient "R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==")
main :: IO ()
main = scotty 8080 $
get "/pixel.gif" $ do
setHeader "Content-Type" "image/gif"
setHeader "Content-Length" (TL.pack (show (BL.length gif)))
setHeader "Cache-Control" "no-store"
raw gif
இந்த ஸ்னிப்பெட்டை ரன் செய்து, அது திருப்பித் தந்த பைட்களை ஒப்பிட்டுப் பார்த்தோம்.
சரிபார்
curl -sI http://localhost:8080/pixel.gif