Создание серверной части REST API с использованием Node.js, Express и Postgres
Опубликовано: 29 Июля, 2021
Бэкэнд JavaScript может быть разработан с использованием Node.js, Express и Postgres. Этот бэкэнд может выполнять операции запросов в базе данных PostgreSQL и предоставлять статус или данные в REST API.
Требования к установке:
- Node.js:
- Установите Node.js в Windows
- Установите Node.js в Linux
- PostgreSQL:
- Установите Postgres в Windows
- Установите Postgres в Linux
- Установите Postgres на Mac
Тестирование на успешную установку:
- Node.js:
- Откройте командную строку или терминал и введите:
узел -v
В выводе должен быть показан пример номера версии:
Версия 12.14.0
Примечание. Если отображается команда не найдена, значит, node.js не установлен.
- Откройте командную строку или терминал и введите:
- Postgres:
- Windows: найдите SQL Shell, если обнаружите, что установка прошла успешно.
- Linux или Mac: введите команду ниже:
который psq
Примечание. Если вывод присутствует, значит, он установлен успешно.
Шаги по настройке базы данных:
- Откройте оболочку PostgresSQL
- Введите учетные данные базы данных для локальной установки или нажмите клавишу ВВОД, если вы хотите использовать значения по умолчанию, как показано ниже:

- Создайте базу данных, используя:
создать базу данных gfgbackend;
- Переключитесь на эту базу данных, используя:
c gfgbackend;
- Создайте тестовую таблицу, используя:
создать тестовую таблицу (id int не null);
- Вставьте значения в тестовую таблицу, используя:
вставить в тестовые значения (1); вставить в тестовые значения (2);
- Теперь попробуйте проверить, вставлены ли данные в таблицу, используя:
выберите * из теста;

Шаги по созданию серверной части:
- Перейдите в каталог, в котором вы хотите создать проект
- Инициализируйте проект узла, используя:
npm init
- Введите имя проекта и другие сведения или нажмите Enter, если вы хотите использовать значение по умолчанию.

- Установить экспресс с помощью npm
npm install --save express
- Установите клиент node-postgres с помощью npm
npm install --save pg
- Установите модуль postgres для сериализации и десериализации данных JSON в формате hstore с помощью npm.
npm install --save pg-hstore
- Создайте файл index.js как точку входа в серверную часть.
- Теперь установите body-parser с помощью npm
npm install --save body-parser
- Теперь добавьте приведенный ниже код в файл index.js, который запускает экспресс-сервер, создает соединение с пулом, а также создает REST API '/ testdata'. Не забудьте добавить свой пароль при создании пула в приведенном ниже коде.
// Entry Point of the API Serverconst express = require('express');/* Creates an Express application.The express() function is a top-levelfunction exported by the express module.*/const app = express();const Pool = require('pg').Pool;const pool =newPool({user:'postgres',host:'localhost',database:'gfgbackend',password:'postgres',dialect:'postgres',port: 5432});/* To handle the HTTP Methods Body Parseris used, Generally used to extract theentire body portion of an incomingrequest 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) {returnconsole.error('Error acquiring client', err.stack)}client.query('SELECT NOW()', (err, result) => {release()if(err) {returnconsole.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 3000const server = app.listen(3000,function() {let host = server.address().addresslet port = server.address().port// Starting the Server at the port 3000}) - Теперь запустите внутренний сервер, используя:
узел index.js
- Откройте браузер и попробуйте маршрутизатор:
http: // локальный: 3000 / testdata
Теперь вы можете увидеть данные из тестовой таблицы следующим образом:
