emptygif
Idioma: Español

Todos los lenguajes y frameworks

Dart standard library (dart:io) Dart

Un fragmento en Dart para Dart standard library (dart:io) que responde a las peticiones a /pixel.gif con el GIF vacío, decodificado una sola vez al arrancar.

Dart standard library (dart:io) Dart

Archivo
server.dart
Ejecutar
dart run server.dart
import 'dart:convert';
import 'dart:io';

final gif = base64Decode('R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==');

Future<void> main() async {
  final server = await HttpServer.bind(InternetAddress.anyIPv4, 8080);
  await for (final request in server) {
    final response = request.response;
    if (request.method == 'GET' && request.uri.path == '/pixel.gif') {
      response.headers
        ..contentType = ContentType('image', 'gif')
        ..set(HttpHeaders.cacheControlHeader, 'no-store');
      response.contentLength = gif.length;
      response.add(gif);
    } else {
      response.statusCode = HttpStatus.notFound;
    }
    await response.close();
  }
}

Ejecutamos este fragmento y comparamos los bytes que devolvió.

Comprobar

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

Sitio oficial: Dart standard library (dart:io)

Más en Dart