CEP Promise
Busca por CEP integrado diretamente aos serviços dos Correios, ViaCEP e outros (Node.js e Browser)
Features
- Sempre atualizado em tempo-real por se conectar diretamente aos serviços dos Correios, ViaCEP e outros.
- Possui alta disponibilidade por usar vários serviços como fallback.
- Sempre retorna a resposta mais rápida por fazer as consultas de forma concorrente.
- Sem limites de uso (rate limits) conhecidos.
- Interface de Promise extremamente simples.
- Suporte ao Node.js
4.x
, 5.x
, 6.x
, 7.x
, 8.x
, 9.x
, 10.x
e @stable
. - Suporte ao Node.js
0.10.x
e 0.12.x
até cep-promise versão 2.0.8
. - 100% de code coverage com testes unitários e E2E.
- Desenvolvido utilizando ES6.
Como utilizar
Teste e aprenda aqui.
Realizando uma consulta
Por ser multifornecedor, a biblioteca irá resolver a Promise com o fornecedor que mais rápido lhe responder.
import cep from 'cep-promise'
cep('05010000')
.then(console.log)
Você também poderá passar o CEP como Inteiro
Em muitos sistemas o CEP é utilizado erroneamente como um Inteiro (e com isto cortando todos os zeros à esquerda). Caso este seja o seu caso, não há problema, pois a biblioteca irá preencher os caracteres faltantes na String, por exemplo:
import cep from 'cep-promise'
cep(5010000)
.then(console.log)
Quando o CEP não é encontrado
Neste caso será retornado um "service_error"
e por ser multifornecedor, a biblioteca irá rejeitar a Promise apenas quando tiver a resposta negativa de todos os fornecedores.
import cep from 'cep-promise'
cep('99999999')
.catch(console.log)
Quando o CEP possui um formato inválido
Neste caso será retornado um "validation_error"
e a biblioteca irá rejeitar imediatamente a Promise, sem chegar a consultar nenhum fornecedor.
import cep from 'cep-promise'
cep('123456789123456789')
.catch(console.log)
Instalação
Browser usando CDN
<script src="https://cdn.jsdelivr.net/npm/cep-promise/dist/cep-promise.min.js"></script>
npm
$ npm install --save cep-promise
Bower
$ bower install --save cep-promise
Angular 2
import * as cep from 'cep-promise'
cep('05010000')
.then(console.log)
Como contribuir
Leia nosso guia de contribuição aqui
Contribuidores
Autor