galileo_range_header 3.0.1 copy "galileo_range_header: ^3.0.1" to clipboard
galileo_range_header: ^3.0.1 copied to clipboard

Range header parser for Dart. Beyond parsing, a stream transformer is included.

example/main.dart

import 'dart:io';
import 'package:galileo_range_header/galileo_range_header.dart';

var file = new File('some_video.mp4');

handleRequest(HttpRequest request) async {
  // Parse the header
  var header = new RangeHeader.parse(request.headers.value(HttpHeaders.rangeHeader));

  // Optimize/canonicalize it
  var items = RangeHeader.foldItems(header.items);
  header = new RangeHeader(items);

  // Get info
  header.items;
  header.rangeUnit;
  header.items.forEach((item) => item.toContentRange(400));

  // Serve the file
  var transformer = new RangeHeaderTransformer(header, 'video/mp4', await file.length());
  await file.openRead().cast<List<int>>().transform(transformer).pipe(request.response);
}
0
likes
40
pub points
0%
popularity

Publisher

verified publishergalileodart.com

Range header parser for Dart. Beyond parsing, a stream transformer is included.

Repository (GitHub)
View/report issues

License

MIT (LICENSE)

Dependencies

async, charcode, quiver, source_span, string_scanner

More

Packages that depend on galileo_range_header