![require(esm) Backported to Node.js 20, Paving the Way for ESM-Only Packages](https://cdn.sanity.io/images/cgdhsj6q/production/be8ab80c8efa5907bc341c6fefe9aa20d239d890-1600x1097.png?w=400&fit=max&auto=format)
Security News
require(esm) Backported to Node.js 20, Paving the Way for ESM-Only Packages
require(esm) backported to Node.js 20, easing the transition to ESM-only packages and reducing complexity for developers as Node 18 nears end-of-life.
cep-promise
Advanced tools
Busca por CEP integrado diretamente aos serviços dos Correios e ViaCEP
Busca por CEP integrado diretamente aos serviços dos Correios, ViaCEP e WideNet (Node.js e Browser)
10.x
, 11.x
, 12.x
, 13.x
, 14.x
e @stable
.4.x
, 5.x
, 6.x
, 7.x
, 8.x
, 9.x
, até cep-promise versão 3.0.9
.0.10.x
e 0.12.x
até cep-promise versão 2.0.8
.Teste e aprenda aqui.
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)
// {
// "cep": "05010000",
// "state": "SP",
// "city": "São Paulo",
// "street": "Rua Caiubí",
// "neighborhood": "Perdizes",
// }
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'
// enviando sem ter um zero à esquerda do CEP "05010000"
cep(5010000)
.then(console.log)
// {
// "cep": "05010000",
// "state": "SP",
// "city": "São Paulo",
// "street": "Rua Caiubí",
// "neighborhood": "Perdizes",
// }
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)
// {
// name: 'CepPromiseError',
// message: 'Todos os serviços de CEP retornaram erro.',
// type: 'service_error',
// errors: [{
// message: 'CEP NAO ENCONTRADO',
// service: 'correios'
// }, {
// message: 'CEP não encontrado na base do ViaCEP.',
// service: 'viacep'
// }]
// }
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)
// {
// name: 'CepPromiseError',
// message: 'CEP deve conter exatamente 8 caracteres.',
// type: 'validation_error',
// errors: [{
// message: 'CEP informado possui mais do que 8 caracteres.',
// service: 'cep_validation'
// }]
// }
timeout
: Timeout em milisegundos das consultas em cada serviço. O tempo total poderá ser maior devido a limites no paralelismo.providers
: Lista de providers a serem usados na consulta. Default é usar todos os providers disponíveis.import cep from 'cep-promise'
cep('5010000', { timeout: 5000, providers: ['brasilapi'] })
.then(console.log)
<script src="https://cdn.jsdelivr.net/npm/cep-promise/dist/cep-promise.min.js"></script>
$ npm install --save cep-promise
$ bower install --save cep-promise
$ yarn add cep-promise
import * as cep from 'cep-promise'
cep('05010000')
.then(console.log)
Leia nosso guia de contribuição aqui
@filipedeschamps |
---|
FAQs
Busca por CEP integrado diretamente aos serviços dos Correios e ViaCEP
The npm package cep-promise receives a total of 27,601 weekly downloads. As such, cep-promise popularity was classified as popular.
We found that cep-promise demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 2 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
require(esm) backported to Node.js 20, easing the transition to ESM-only packages and reducing complexity for developers as Node 18 nears end-of-life.
Security News
PyPI now supports iOS and Android wheels, making it easier for Python developers to distribute mobile packages.
Security News
Create React App is officially deprecated due to React 19 issues and lack of maintenance—developers should switch to Vite or other modern alternatives.