const axios = require("axios"); const getConsultaCep = async (req, res) => { const { cep: rawCep, numero: rawNumero } = req.query; if (!rawCep) return res.status(400).json({ error: "cep é obrigatório" }); const cep = String(rawCep).trim().replace(/\D/g, ""); if (cep.length !== 8) return res.status(400).json({ error: "cep inválido, verifique se foram digitados apenas números" }); const numero = rawNumero ? String(rawNumero).trim() : ""; try { const cepRestUrl = 'https://api.cep.rest/'; const address = await axios.post(cepRestUrl, { cep }); if (address.data && address.data.code === 404) { return res.status(404).json({ error: "CEP não encontrado" }); } else if (address.data && address.data.code) { return res.status(500).json({ error: "Erro ao consultar o CEP" }); } else { if (numero) address.data.numero = numero; return res.json(address.data); } } catch (error) { console.error("Erro ao consultar o CEP:", error); return res.status(500).json({ error: "Erro ao consultar o CEP" }); } }; module.exports = { getConsultaCep };