pesquisarCEP static method

Future<Endereco?> pesquisarCEP(
  1. String cep, [
  2. String numero = "",
  3. String complemento = ""
])

Pesquisa um endereço a partir de um CEP. Utiliza a api ViaCEP para buscar o endereço.

Retorna um objeto Endereco contendo as informações do endereço encontrado. O parâmetro cep é obrigatório e representa o CEP a ser pesquisado. O parâmetro numero é opcional e representa o número do endereço. O parâmetro complemento é opcional e representa o complemento do endereço.

Exemplo de uso:

Endereco endereco = await pesquisarCEP('12345678', '123', 'Apto 101');
print(endereco.logradouro); // Exibe o logradouro do endereço encontrado

Implementation

static Future<Endereco?> pesquisarCEP(String cep, [String numero = "", String complemento = ""]) async {
  final url = 'https://viacep.com.br/ws/$cep/json/';
  if (validarCEP(cep)) {
    try {
      final response = await http.get(Uri.parse(url));
      if (response.statusCode == 200) {
        final JsonMap data = json.decode(response.body);
        data['cep'] = cep;
        data['numero'] = numero;
        data['complemento'] = complemento;
        return (await Endereco.fromJson(data));
      } else {
        consoleLog('Erro ao buscar endereço: ${response.statusCode} ${response.reasonPhrase}');
      }
    } catch (e) {
      consoleLog('Erro ao buscar endereço: $e');
    }
  }
  return null;
}