Skip to content

Instantly share code, notes, and snippets.

@hjJunior
Last active December 10, 2018 14:02
Show Gist options
  • Save hjJunior/8243283d316d503370a740cdb7d97947 to your computer and use it in GitHub Desktop.
Save hjJunior/8243283d316d503370a740cdb7d97947 to your computer and use it in GitHub Desktop.
import 'package:http/http.dart' as http;
import 'dart:convert';
import '../models/beer.dart';
Future<Stream<Beer>> getBeers() async {
final String url = 'https://api.punkapi.com/v2/beers';
final client = new http.Client();
final streamedRest = await client.send(
http.Request('get', Uri.parse(url))
);
return streamedRest.stream
.transform(utf8.decoder)
.transform(json.decoder)
.expand((data) => (data as List))
.map((data) => Beer.fromJSON(data));
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment