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

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

Encore.ts TypeScript

Пример на TypeScript для Encore.ts, который отвечает на запросы к /pixel.gif пустым GIF, декодированным один раз при запуске.

Encore.ts TypeScript

Установка
encore app create --example=ts/hello-world
Файл
pixel.ts
Запуск
encore run
// pixel/pixel.ts  (inside a service directory with an encore.service.ts)
import { api } from 'encore.dev/api';

const GIF = Buffer.from('R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==', 'base64');

// A raw endpoint gets Node's req/res, so the bytes are written untouched.
export const pixel = api.raw(
  { expose: true, method: 'GET', path: '/pixel.gif' },
  async (req, resp) => {
    resp.writeHead(200, {
      'Content-Type': 'image/gif',
      'Content-Length': GIF.length,
      'Cache-Control': 'no-store',
    });
    resp.end(GIF);
  },
);

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

Проверка

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

Официальный сайт: Encore.ts

Ещё на TypeScript