via_cep 1.0.6

Package para integração com API ViaCEP (https://www.viacep.com.br). Se você estava procurando um webservice gratuito e de alto desempenho para consultar Códigos de Endereçamento Postal (CEP) do Brasil? Utilize o serviço, melhore a qualidade de suas aplicações e colabore para manter esta base de dados atualizada.

Uso #

Um simples exemplo de uso:

import 'package:via_cep/via_cep.dart';

main() async {
  var CEP = new via_cep();
  
  var result = await CEP.searchCEP('12512170', 'json', '');
  
  // Sucesso
  if (CEP.getResponse() == 200) { 
     print('CEP: '+CEP.getCEP());
     print('Logradouro: '+CEP.getLogradouro());
     print('Complemento: '+CEP.getComplemento());
     print('Bairro: '+CEP.getBairro());
     print('Localidade: '+CEP.getLocalidade());
     print('UF: '+CEP.getUF());
     print('Unidade: '+CEP.getUnidade());
     print('IBGE '+CEP.getIBGE());
     print('GIA: '+CEP.getGIA());
  // Falha
  } else {
    print('Código de Retorno: '+CEP.getResponse().toString());
    print('Erro: '+CEP.getBody());
  }
}

Recursos #

searchCEP - Método que realiza a consulta do CEP.

Parâmetros: searchCEP(String CEP, output, sensitive)
    Srting CEP = CEP (somente números, sem caracteres especiais e com 8 digitos)
    
    String output = Tipo de saída de dados, para retorno por meio de get() é indiferente ao usuário, porém para retorno do Body haverá diferenciação (recomenda-se sempre usar json).
        Opções: json
                xml
                piped
                querty
                
    String sensitive = Tipo de saída dos dados, normal, lowercase ou upppercase.
        Opções: '' (em branco) ou null
                lower
                uper
                
         Qualquer formato texto informado não reconhecido será inerpretad como branco ou nulo.

gets

getBody(); // Retorna na integralidade a resposta da API.
getResponse(); // Retorna o código da consulta a API (Padrão 200 para sucesso).

Quando houver sucesso (código 200) os métodos abaixo trazem retorno, do contrário retornam null;

getCEP(); // Recupera o CEP (formatado). 
getLogradouro(); // Recupera o Lograouro (Ex.: Rua... Avenida, Etc.).
getComplemento(); // Recupera o Complemento.
getBairro(); // Recupera o Bairro.
getLocalidade(); // Recupera a Cidade do CEP.
getUF(); // Recupera o Estado (sigla) do CEP.
getUnidade(); // Recupera a Unidade do CEP. 
getIBGE(); // Recupera o Código de Município IBGE do CEP.
getGIA(); // Recupera o Código GIA do CEP.


Para conhecer melhor o funcionamento acesse o site de origem da API (https://www.viacep.com.br)

Funcionalidades e Bugs #

Por favor para requisições de funcionalidades e bugs issue tracker.

1.0.6 #

  • Correção do arquivo example/via_cep_example.dart.
  • Correção do arquivo test/via_cep_test.dart.

1.0.5 #

  • Correção do CHANGELOG.md.

1.0.4 #

  • Correção e melhoria do README.md.
  • Correção e melhoria do arquivo de exemplo de uso.

1.0.3 #

  • Correção da URL da API.
  • Criação do parâmetro para possibilitar modificação do case sensitive de resposta (null, 'lower', 'case').

1.0.2 #

  • Correção dos caminhos do github.
  • Execução do dartfmt como sugerido.

1.0.1 #

  • Correção de sugestões do Google ao Package (quantidade de caracteres da descrição do pacote e homepage).
  • Declaração de import que faltava no arquivo via_cep_base.

1.0.0 #

  • Versão inicial, desenvolvido por Mateus Penha.

example/via_cep_example.dart

import 'package:via_cep/via_cep.dart';

main() async {
  var CEP = new via_cep();

  var result = await CEP.searchCEP('12512170', 'json', '');

  // Sucesso
  if (CEP.getResponse() == 200) {
    print('CEP: '+CEP.getCEP());
    print('Logradouro: '+CEP.getLogradouro());
    print('Complemento: '+CEP.getComplemento());
    print('Bairro: '+CEP.getBairro());
    print('Localidade: '+CEP.getLocalidade());
    print('UF: '+CEP.getUF());
    print('Unidade: '+CEP.getUnidade());
    print('IBGE '+CEP.getIBGE());
    print('GIA: '+CEP.getGIA());
  } else {
    print('Código de Retorno: '+CEP.getResponse().toString());
    print('Erro: '+CEP.getBody());
  }
}

Use this package as a library

1. Depend on it

Add this to your package's pubspec.yaml file:


dependencies:
  via_cep: ^1.0.6

2. Install it

You can install packages from the command line:

with pub:


$ pub get

with Flutter:


$ flutter pub get

Alternatively, your editor might support pub get or flutter pub get. Check the docs for your editor to learn more.

3. Import it

Now in your Dart code, you can use:


import 'package:via_cep/via_cep.dart';
  
Popularity:
Describes how popular the package is relative to other packages. [more]
74
Health:
Code health derived from static analysis. [more]
99
Maintenance:
Reflects how tidy and up-to-date the package is. [more]
100
Overall:
Weighted score of the above. [more]
86
Learn more about scoring.

We analyzed this package on Jul 15, 2019, and provided a score, details, and suggestions below. Analysis was completed with status completed using:

  • Dart: 2.4.0
  • pana: 0.12.19

Platforms

Detected platforms: Flutter, web, other

No platform restriction found in primary library package:via_cep/via_cep.dart.

Health issues and suggestions

Document public APIs. (-1 points)

17 out of 17 API elements have no dartdoc comment.Providing good documentation for libraries, classes, functions, and other API elements improves code readability and helps developers find and use your API.

Fix lib/src/via_cep_base.dart. (-0.50 points)

Analysis of lib/src/via_cep_base.dart reported 1 hint:

line 56 col 7: DO use curly braces for all flow control structures.

Format lib/via_cep.dart.

Run dartfmt to format lib/via_cep.dart.

Dependencies

Package Constraint Resolved Available
Direct dependencies
Dart SDK >=2.1.0 <3.0.0
http ^0.12.0+1 0.12.0+2
xml2json ^3.0.3 3.0.3
Transitive dependencies
async 2.2.0
charcode 1.1.2
collection 1.14.11
convert 2.1.1
http_parser 3.1.3
meta 1.1.7
path 1.6.2
petitparser 2.4.0
source_span 1.5.5
string_scanner 1.0.4
term_glyph 1.1.0
typed_data 1.1.6
xml 3.5.0
Dev dependencies
pedantic ^1.0.0 1.8.0+1
test ^1.0.0

Admin