ECONNREFUSED 127.0.0.1:5432 RDS, Postgres - PullRequest
       68

ECONNREFUSED 127.0.0.1:5432 RDS, Postgres

0 голосов
/ 30 апреля 2020

Я застрял на этой ошибке довольно долго, и я пытаюсь выяснить, знает ли кто-нибудь, что делать!

Я создаю конечную точку, используя лямбду, которую я хочу, когда нажмите, сначала вставьте контракт в postgres дБ, работающий на RDS, а затем вставьте содержимое сообщения в ту же базу данных (и отправьте электронное письмо, используя SES, но я уже понял, что это за часть). Что я хочу сделать, так это передать новый пул postgres в функцию отправки сообщения внизу, но каждый раз, когда я это делаю, и пытаюсь добраться до базы данных, я получаю Error: connect ECONNREFUSED 127.0.0.1:5432 at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1141:16). Это когда я работаю без сервера в автономном режиме. Первоначальный запрос SQL выполняется, но второй - нет.

Буду очень признателен за любые рекомендации, я вставил соответствующие фрагменты кода ниже. Я впервые что-то делаю с JavaScript, так что это может быть очень тупой вопрос

контрактов. js

const db = require('../db_connect');
const messages = require('./messages');

//POST endpoint to create a generic contract, it's worth keeping in mind that whenever we create a contract, it will always default to false for field isFinished
module.exports.createContract = (event, context, callback) => {
    context.callbackWaitsForEmptyEventLoop = false;

    const reqBody = JSON.parse(event.body);
    const influencerID = reqBody.influencerID;
    const buyerID = reqBody.buyerID;
    const monetaryValue = reqBody.monetaryValue;
    const charityID = reqBody.charityID;

    db.query('INSERT INTO contracts(influencer_id, buyer_id, monetary_value, charity_id, is_finished) VALUES($1, $2, $3, $4, false)', [influencerID, buyerID, monetaryValue, charityID])
        .then(res => {
            callback(null, {
                statusCode: 200,
                body: 'successfully inserted contract'
            })
            messages.sendMessage(db, reqBody, buyerID, influencerID)
        })
         .catch(e => {
            console.log(e);
            callback(null, {
                statusCode: e.statusCode || 500,
                body: 'Error:' + e
            });
        }); 

};

сообщения . js

var dotenv = require('dotenv').config();
var aws = require('aws-sdk')
const db = require('../db_connect');


function sendMessage(reqBody, senderID, receiverID) {

  const messageBody = reqBody.messageBody;
  const timestamp = Date.now();

  var receiverEmail;

  db.query("SELECT e_mail FROM users WHERE user_id = $1", [receiverID])
  .then(res => {
    console.log(res)
    receiverEmail = res.rows[0]
    console.log("this is the new email --> ", receiverEmail)
  })
  .catch(e =>{
    throw console.error(e);
  })
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...