Connect with NodeJS#
This example connects to PostgreSQL® service from NodeJS, making use of the pg
package.
Variables#
These are the placeholders you will need to replace in the code sample:
Variable |
Description |
---|---|
|
URL for PostgreSQL connection, from the service overview page |
Pre-requisites#
For this example you will need:
The npm
pg
package:npm install pg --save
Download a CA certificate from the service overview page, this example assumes it is in a local file called
ca.pem
.
Code#
Add the following to index.js
and replace the placeholder with the PostgreSQL URI:
const fs = require('fs');
const pg = require('pg');
const postgresqlUri = "POSTGRESQL_URI";
const conn = new URL(postgresqlUri);
conn.search = conn.query = "";
const config = {
connectionString: conn.href,
ssl: {
rejectUnauthorized: true,
ca: fs.readFileSync('./ca.pem').toString(),
},
};
const client = new pg.Client(config);
client.connect(function (err) {
if (err)
throw err;
client.query("SELECT VERSION()", [], function (err, result) {
if (err)
throw err;
console.log(result.rows[0]);
client.end(function (err) {
if (err)
throw err;
});
});
});
This code creates a PostgreSQL client and opens a connection to the database. Then runs a query checking the database version and prints the response.
Note
This example removes ?sslmode=require
from the URL string to avoid running into this bug. Adding the rejectUnauthorized: true
configuration ensures that the certificate is checked.
To run the code:
node index.js
If the script runs successfully, the outputs should be the PostgreSQL version running in your service like:
PostgreSQL 13.3 on x86_64-pc-linux-gnu, compiled by gcc, a 68c5366192 p 6520304dc1, 64-bit