title: How to connect remote database via NodeJS
body: <p>I am trying to connect to Heroku's database via NodeJs. </p>
  
  <p>I tried to connect to localhost and it worked perfectly. But when i tried to remote database it gives error. </p>
  
  <p>Here is the localhost connection code which is working perfectly.</p>
  
  <pre><code>const conectionString='postgressql://postgres:1234@localhost:5433/Qfield'
  const client= new Client({
      connectionString:conectionString
  })
  
  client.connect()
  
  //client.query('select * from point',(err,res)=&gt;{
  //    console.log(err,res)
  //    client.end()
  //})
  
  client.query('SELECT * FROM trees', function(err, res) {
      console.log(err,res)
      client.end()
      });
  
  </code></pre>
  
  <p>Here is the error connection which is remote database.</p>
  
  <pre><code>const {Pool,Client}=require('pg')
  const conectionString='postgressql://Username:Password@ec2-54-228-243-29.eu-west-1.compute.amazonaws.com:5432/database'
  const client= new Client({
      connectionString:conectionString
  })
  
  client.connect()
  
  //client.query('select * from point',(err,res)=&gt;{
  //    console.log(err,res)
  //    client.end()
  //})
  
  client.query('SELECT * FROM trees', function(err, res) {
      console.log(err,res)
      client.end()
      });
  </code></pre>
  
  <p>Here is the error.</p>
  
  <pre><code>(node:14896) UnhandledPromiseRejectionWarning: error: no pg_hba.conf entry for host "193.140.225.88", user "vfoiltyjszbpav", database "dduigib0uc8ebt", SSL off
      at Connection.parseE (C:\Users\CBS Lab\Desktop\postgres_conn\node_modules\pg\lib\connection.js:604:11)
      at Connection.parseMessage (C:\Users\CBS Lab\Desktop\postgres_conn\node_modules\pg\lib\connection.js:401:19)
      at Socket.&lt;anonymous&gt; (C:\Users\CBS Lab\Desktop\postgres_conn\node_modules\pg\lib\connection.js:121:22)
      at Socket.emit (events.js:198:13)
      at addChunk (_stream_readable.js:288:12)
      at readableAddChunk (_stream_readable.js:269:11)
      at Socket.Readable.push (_stream_readable.js:224:10)
      at TCP.onStreamRead [as onread] (internal/stream_base_commons.js:94:17)
  (node:14896) 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(). (rejection id: 1)
  (node:14896) [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.
  Error: Connection terminated unexpectedly
      at Connection.con.once (C:\Users\CBS Lab\Desktop\postgres_conn\node_modules\pg\lib\client.js:252:9)
      at Object.onceWrapper (events.js:286:20)
      at Connection.emit (events.js:198:13)
      at Socket.&lt;anonymous&gt; (C:\Users\CBS Lab\Desktop\postgres_conn\node_modules\pg\lib\connection.js:131:10)
      at Socket.emit (events.js:203:15)
      at endReadableNT (_stream_readable.js:1145:12)
      at process._tickCallback (internal/process/next_tick.js:63:19)
  </code></pre>
  
  <p>How can I fix this error? What am I doing wrong?</p>