Crear un backend de API REST usando Node.js, Express y Postgres

JavaScript Backend se puede desarrollar utilizando Node.js, Express y Postgres. Este backend puede realizar operaciones de consulta en la base de datos PostgreSQL y proporcionar el estado o los datos en la API REST.

Requisito de instalación:

  1. Node.js:
  2. PostgresSQL:

Pruebas para una instalación exitosa:

  1. Node.js:
    • Abra el símbolo del sistema o la terminal y escriba:
      node -v 

      La salida debe mostrar algún ejemplo de número de versión:

      v12.14.0 

      Nota: Si muestra el comando no encontrado, entonces node.js no se instaló correctamente.

  2. postgres:
    • Windows: busque SQL Shell, si lo encuentra, la instalación es exitosa.
    • Linux o Mac: escriba el siguiente comando:
       which psql 

      Nota: Si la salida está presente, entonces se instaló correctamente.

Pasos para configurar la base de datos:

  • Abra el shell de PostgresSQL
  • Escriba las Credenciales de la base de datos para la configuración local o presione Intro en caso de que desee utilizar los valores predeterminados, como se muestra a continuación:
    Postgresql Database shell
  • Cree la base de datos usando:
    create database gfgbackend;     
  • Cambie a esta base de datos usando:
    \c gfgbackend;
  • Cree una tabla de prueba usando:
    create table test(id int not null); 
  • Inserte valores en la tabla de prueba usando:
    insert into test values(1);  
    insert into test values(2);
  • Ahora intente validar si los datos se insertan en la tabla usando:
    select * from test;

    Insert and Select Statement

Pasos para crear un backend:

  • Vaya al directorio donde desea crear el proyecto
  • Inicialice el proyecto de Node usando:
    npm init
  • Escriba el nombre del proyecto y otros detalles o presione Entrar si desea ir con Predeterminado
    npm init details
  • Instalar express usando npm
    npm install --save express
  • Instale el cliente node-postgres usando npm
    npm install --save pg
  • Instale el módulo de postgres para serializar y deserializar datos JSON en formato hstore usando npm.
     npm install --save pg-hstore    
  • Cree un archivo index.js como punto de entrada al backend.
  • Ahora instale el analizador corporal usando npm
    npm install --save body-parser
  • Ahora agregue el siguiente código al archivo index.js que inicia el servidor express, crea una conexión de grupo y también crea una API REST ‘/testdata’. No olvide agregar su contraseña mientras crea el grupo en el siguiente código.

    // Entry Point of the API Server 
      
    const express = require('express');
      
    /* Creates an Express application. 
       The express() function is a top-level 
       function exported by the express module.
    */
    const app = express();
    const Pool = require('pg').Pool;
      
    const pool = new Pool({
        user: 'postgres',
        host: 'localhost',
        database: 'gfgbackend',
        password: 'postgres',
        dialect: 'postgres',
        port: 5432
    });
      
      
    /* To handle the HTTP Methods Body Parser 
       is used, Generally used to extract the 
       entire body portion of an incoming 
       request stream and exposes it on req.body 
    */
    const bodyParser = require('body-parser');
    app.use(bodyParser.json())
    app.use(bodyParser.urlencoded({ extended: false }));
      
      
    pool.connect((err, client, release) => {
        if (err) {
            return console.error(
                'Error acquiring client', err.stack)
        }
        client.query('SELECT NOW()', (err, result) => {
            release()
            if (err) {
                return console.error(
                    'Error executing query', err.stack)
            }
            console.log("Connected to Database !")
        })
    })
      
    app.get('/testdata', (req, res, next) => {
        console.log("TEST DATA :");
        pool.query('Select * from test')
            .then(testData => {
                console.log(testData);
                res.send(testData.rows);
            })
    })
      
    // Require the Routes API  
    // Create a Server and run it on the port 3000
    const server = app.listen(3000, function () {
        let host = server.address().address
        let port = server.address().port
        // Starting the Server at the port 3000
    })
  • Ahora, inicie el servidor backend usando:
    node index.js
  • Abra el navegador e intente enrutar para:
    http://localhost:3000/testdata

    Ahora, puede ver los datos de la tabla de prueba de la siguiente manera:
    REST API DATA

Publicación traducida automáticamente

Artículo escrito por ShJos y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *