1
resposta

Passando um array com as variaveis de VALUE (?,?)

Na rest-api estou passando um array de com variaveis pega pelo body, porem o Postman retorna que a variavel nao foi definida

router.post('/',(req,res,next)=>{

    mysql.getConnection((error,conn)=>{
        if (error){ return res.status(500).send({error: error})}
        conn.query(
            'INSERT INTO andamento (nome, valor) VALUES (?,?)',
            [req.body.nome, req.body.valor],
            (error, resultado, field)=>{
                conn.release();
                if (error){ return res.status(500).send({error: error})}
                res.status(201).send({
                    mensagem:'pedido realizado com sucesso',
                    id_pedido : resultado.insertId
                });
            }
        )
    })

});

Eu ja tentei defini-las antes fazendo :

const nome = req.body.nome;
const valor = req.body.valor;

[...]

 'INSERT INTO andamento (nome, valor) VALUES (?,?)',
            [nome,valor],

Porem desse jeito tambem não funcionou, ele me passa o seguinte erro

Parser.js:437 throw err; // Rethrow non-MySQL errors TypeError: Cannot read properties of undefined (reading 'nome')

1 resposta

Olá, Mario! Tudo bem com você?

Peço desculpa pela demora para responder o seu tópico.

Pelo código que você compartilhou, parece que você está tentando passar um array com as variáveis de valor para a consulta SQL. No entanto, o erro que você está recebendo indica que a propriedade 'nome' não está definida.

Uma possível solução para esse problema é verificar se as variáveis 'nome' e 'valor' estão sendo enviadas corretamente no corpo da requisição. Certifique-se de que você está passando os valores corretos ao fazer a requisição no Postman.

Outra alternativa é definir as variáveis 'nome' e 'valor' antes de fazer a consulta SQL, como você mencionou que já tentou fazer. Certifique-se de que você está atribuindo os valores corretos às variáveis antes de passá-las para a consulta.

Espero que essas sugestões possam te ajudar a resolver o problema. Se você tiver mais alguma dúvida, estarei à disposição!

Grande abraço e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.