1
resposta

Exercício 1 - Minha resolução

import 'package:http/http.dart';

void main() {
  fetchRecipes();
}

fetchRecipes() {
  String url = 'https://gist.githubusercontent.com/Santosand/99f9a3c903e6d90ce872c088b58027a5/raw/c309e45b2edaa8bc47a01d376d7f476358e56947/recipes.json';
  
  //Converter url do tipo String para um objeto do tipo Uri
  Uri uri = Uri.parse(url);

  //Fazer a requisição com o servidor
  Future<Response> futureResponse = get(uri);

  //Esperar o assincronismo da requisição e
  //Depois mostrar o conteúdo do corpo do arquivo JSON
  futureResponse.then((Response response) {
    print(response.body);    
  },);
}
1 resposta

Oi, Luís Henrique! Como vai?

Agradeço por compartilhar seu código com a comunidade Alura.

Gostei de ver que você entendeu bem como usar o Uri.parse e o get do pacote http. Isso mostra que está dominando a base de requisições em Dart.

Uma dica interessante para o futuro é usar async e await para deixar o código mais limpo:


import 'package:http/http.dart';

void main() async {
  String url = 'https://exemplo.com/dados.json';
  Uri uri = Uri.parse(url);
  Response response = await get(uri);
  print(response.body);
}

Neste exemplo, await faz o programa esperar a resposta antes de continuar.

Alura

Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!