https://github.com/renandmc/consulta-cep
App para consulta de CEP via serviço viacep (https://viacep.com.br/)
https://github.com/renandmc/consulta-cep
api-rest axios docker docker-compose express javascript nodejs npm
Last synced: 3 months ago
JSON representation
App para consulta de CEP via serviço viacep (https://viacep.com.br/)
- Host: GitHub
- URL: https://github.com/renandmc/consulta-cep
- Owner: renandmc
- Created: 2022-08-14T21:43:46.000Z (almost 4 years ago)
- Default Branch: master
- Last Pushed: 2024-01-10T03:22:21.000Z (over 2 years ago)
- Last Synced: 2025-06-02T19:54:30.201Z (about 1 year ago)
- Topics: api-rest, axios, docker, docker-compose, express, javascript, nodejs, npm
- Language: JavaScript
- Homepage:
- Size: 29.3 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Consulta CEP
## Descrição do problema
Precisamos criar um outro endPoint que receba um cep e que o mesmo faça uma consulta deste CEP na viaCEP (https://viacep.com.br/)
O Serviço que precisa ser chamado no ViaCEP é o seguinte: https://viacep.com.br/ws/XXXXXXXX/json
Onde o XXXXXXXX é um Cep válido.
Este endereço tem que ser retornado para o chamador, caso o Bairro não seja encontrado na ViaCEP, além do resto das informações, uma mensagem tem que ser retornada para o cliente informando que não foi possível encontrar o Bairro deste CEP. Exemplo de CEP sem Bairro :18150000
Comite seu código.
Divida em camadas de responsabilidade única, com classes e métodos coesos. Vá pela simplicidade do código.
Implemente testes automatizados.
## Instruções para execução
1. Clonar o repositório
2. Subir o container
```
docker-compose up -d
```
3. Acessar o endpoint, onde {cep} é um número com 8 dígitos (um CEP válido)
```
GET http://localhost:3000/cep/{cep}
```
Exemplo, CEPs (sem bairro e com bairro):
```
GET http://localhost:3000/cep/18150000
GET http://localhost:3000/cep/19802122
```
4. Verificar o resultado
CEP sem bairro (status 400)
```
{
"error": "CEP without neighborhood",
"address": {
"cep": "18150-000",
"logradouro": "",
"complemento": "",
"bairro": "",
"localidade": "Ibiúna",
"uf": "SP",
"ibge": "3519709",
"gia": "3451",
"ddd": "15",
"siafi": "6495"
}
}
```
CEP com bairro (status 200)
```
{
"address": {
"cep": "19802-122",
"logradouro": "Rua Vicente de Carvalho",
"complemento": "de 778/779 ao fim",
"bairro": "Vila Ribeiro",
"localidade": "Assis",
"uf": "SP",
"ibge": "3504008",
"gia": "1892",
"ddd": "18",
"siafi": "6179"
}
}
```