1
resposta

Error: connect ECONNREFUSED 127.0.0.1:8082

Olá a todos(as), primeiramente, obrigado pelo curso, me ajuda bastante a dominar mais essa ferramenta. Seguinte, na última aula/vídeo, a professora disse que dessa vez, deixou uma tarefa para a gente, essa tarefa, é colocar as outras rotas em Promises, quando eu fui fazer a do .buscaPorId(), o axios, na hora de colocar no postman (get) o comando: localhost:3000/atendimentos/1, fez com que gerasse esse erro no terminal:

(node:6096) UnhandledPromiseRejectionWarning: Error: connect ECONNREFUSED 127.0.0.1:8082
    at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1146:16)
(Use `node --trace-warnings ...` to show where the warning was created)
(node:6096) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async 
function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 2)
(node:6096) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

E eu não sei o que é isso, já pesquisei no google, mas, nenhuma informação consegui e quero finalizar isso para realmente dominar o programa. Logo abaixo, mostrarei os códigos que fiz:

atendimentos.js - pasta - controllers

app.get('/atendimentos/:id', (req, res) => {
        const id = parseInt(req.params.id)

        Atendimento.buscaPorId(id)
            .then(resultados => res.status(200).json(resultados))
            .catch(erros => res.status(400).json(erros))
    })

atendimentos.js - pasta - models

buscaPorId(id, res) {
        return repositorio.buscaPorId(id, true)
}

atendimento.js - pasta - repositorios

buscaPorId(id, async){
        const sql = `SELECT * FROM Atendimentos WHERE id=${id}`
        return query(sql, "", async)
    }

queries.js - pasta - database

const axios = require('axios')

const executaQuery = (query, parametros = '', async_confirmacao = false) => {
    if(async_confirmacao){
        return new Promise((resolve, reject) => {
            conexao.query(query, parametros, async (erros, resultados, campos) => {
                const atendimento = resultados[0]
                const cpf = atendimento.cliente

                if (erros) {
                    reject(erros)
                } else {
                    const { data } = await axios.get(`http://localhost:8082/${cpf}`)
                    atendimento.cliente = data

                    resolve(atendimento)
                }
            })
        })
    }else{
        return new Promise((resolve, reject) => {
            conexao.query(query, parametros, (erros, resultados, campos) => {
                if (erros) {
                    reject(erros)
                } else {
                    resolve(resultados)
                }
            })
        })
    }
}

Se puderem me ajudar, desde já agradeço!

Att. Geovane

1 resposta

Aparentemente, não há um serviço escutando na porta :8082, por isso o erro. Dentro da pasta servicos, execute, no terminal: node clientes.js antes

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software