heroku DATABASE_URL не определен в приложении nodejs - PullRequest
0 голосов
/ 06 мая 2020

На сайте Heroku указано, что DATABASE_URL устанавливается автоматически для вас. Я использовал команду heroku config, чтобы подтвердить, что DATABASE_URL действительно установлен.

Однако, когда я использую команду pg package

const client = new Client({
    connectionString: process.env.DATABASE_URL,
    ssl: true,
});

и выполняю console.log(process.env.DATABASE_URL), переменная читается как undefined.

Другие ошибки, которые я получение:

UnhandledPromiseRejectionWarning: Ошибка: сервер не поддерживает SSL-соединения

Полный код:

const express = require('express');
require('dotenv').config();

const { Client } = require('pg');
const app = express();

console.log(process.env.DATABASE_URL);

const client = new Client({
    connectionString: process.env.DATABASE_URL,
    ssl: true,
});

 client.connect();

 client.query('SELECT * FROM customers;', (err, res) => {
    if (err) throw err;
    for (let row of res.rows) {
        console.log(JSON.stringify(row));
    }
    client.end();
});


app.get('/', (req, res) => { 
    res.send('Hello World')
});


app.listen(4000, () => {
    console.log(`Server started on port`);
});

Код работает, когда Я использую свою локальную базу данных postgresql, но когда я пытаюсь подключиться к базе данных Heroku postgres, возникают указанные выше ошибки. Есть предложения?

...