Shelf Dart
/pixel.gif 요청에 빈 GIF로 응답하는 Shelf용 Dart 스니펫입니다. GIF는 시작할 때 한 번만 디코딩합니다.
Shelf Dart
import 'dart:convert';
import 'dart:io';
import 'package:shelf/shelf.dart';
import 'package:shelf/shelf_io.dart' as io;
import 'package:shelf_router/shelf_router.dart';
final gif = base64Decode('R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==');
Future<void> main() async {
final router = Router()
..get('/pixel.gif', (Request request) {
return Response.ok(gif, headers: {
HttpHeaders.contentTypeHeader: 'image/gif',
HttpHeaders.cacheControlHeader: 'no-store',
});
});
await io.serve(router.call, InternetAddress.anyIPv4, 8080);
}
이 스니펫은 실행해 보고, 반환된 바이트를 비교했습니다.
확인
curl -sI http://localhost:8080/pixel.gif