emptygif
Язык: Русский

Все языки и фреймворки

Crystal standard library (HTTP::Server) Crystal

Пример на Crystal для Crystal standard library (HTTP::Server), который отвечает на запросы к /pixel.gif пустым GIF, декодированным один раз при запуске.

Crystal standard library (HTTP::Server) Crystal

Файл
server.cr
Запуск
crystal run server.cr
require "base64"
require "http/server"

GIF = Base64.decode("R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==")

server = HTTP::Server.new do |context|
  request, response = context.request, context.response
  if request.method == "GET" && request.path == "/pixel.gif"
    response.content_type = "image/gif"
    response.headers["Cache-Control"] = "no-store"
    response.content_length = GIF.size
    response.write(GIF)
  else
    response.respond_with_status(:not_found)
  end
end

server.bind_tcp "0.0.0.0", 8080
server.listen

Сверено с актуальной документацией фреймворка.

Проверка

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

Официальный сайт: Crystal standard library (HTTP::Server)

Ещё на Crystal