Shelf Dart
適用於 Shelf 的 Dart 程式碼片段,以空 GIF 回應對 /pixel.gif 的請求,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