Сборка Whinst, часть 9: Изучение Express и PostgreSQL

Следующим шагом в плане разработки Whinst после создания внешнего интерфейса является изучение необходимых серверных технологий перед началом создания внутреннего интерфейса. Технологии, которые я буду использовать для серверной части: Express для сервера и API и PostgreSQL для базы данных. В этой статье я подведу итог всему, что я узнал об этих технологиях. Давайте погрузимся🏄🏾

Обучение Экспресс🧑🏾‍💻

Express — это платформа Node.js. Прежде чем вы сможете начать изучать Express, вам необходимо немного познакомиться с Node.js, что, к счастью для меня, у меня уже было😏. Экспресс-сервер создается путем первой инициализации менеджера пакетов узла в папке проекта, а затем установки экспресс-пакетов и других необходимых пакетов, таких как CORS. Команды ниже показывают, как это делается.

$ npm init
$ npm i express pg cors

Для создания экспресс-сервера необходимо создать файл index.js, который действует как своего рода центр управления приложением. В этом файле index.js сначала должны быть записаны библиотеки Express и CORS, затем определенная переменная, обычно имеющая имя app, берет библиотеку Express и запускает ее для создания сервера. Также определено промежуточное программное обеспечение, такое как библиотека CORS. Когда сервер работает, он прослушивает установленный номер порта (номер порта, установленный в примере ниже, равен 3000). Чтобы интерфейс мог получать данные из API, необходимо определить конечную точку. Код ниже показывает, как реализуются все эти шаги.

//Recording libraries
const express = require("express");
const app = express();
const cors = require("cors");
const dbInfo = require("./db");

//Defining middleware
app.use(cors());
app.use(express.json());

//Setting up GET API endpoint
app.get("/", async (req, res) => {
  try {
    const items = await dbInfo.query("SELECT * FROM info");
    res.json(items.rows);
  } catch (err) {
    console.error(err.message);
  }
});

//Setting the server to listen to port 3000
app.listen(3000, () => {
  console.log("server is running");
});

Изучение PostgreSQL🧑🏾‍💻

После установки PostgreSQL в базу данных и входа на сервер PostgreSQL можно создать базу данных и таблицы, используя приведенные ниже примеры команд.

CREATE DATABASE information;

CREATE TABLE info(
  id SERIAL PRIMARY KEY,
  description VARCHAR(255)
);

Первая команда создает новую базу данных с именем Information, а вторая команда создает в базе данных таблицу с именем Info. Поле первичного ключа id создается в информационной таблице и ему присваивается тип varchar с ограничением в 255 символов.

Чтобы подключить базу данных к серверу, необходимо создать файл в нашей серверной папке, чтобы сообщить серверу, где находится база данных и как он может получить к ней доступ. Код ниже показывает, как это реализовано.

const dbInfo = require("pg").dbInfo;

const dbInfo = new dbInfo({
  user: "postgres",
  password: "password",
  host: "localhost",
  port: 5432,
  database: "information"
});

module.exports = dbInfo;

Затем эта информация экспортируется отсюда и импортируется в файл index.js. Такая информация, как пользователь, пароль и порт, должна быть указана, чтобы сервер мог найти базу данных и получить к ней доступ.

Вышеуказанные шаги представляют собой краткое изложение того, что я узнал об Express и PostgreSQL. Эти шаги создают простую конечную точку API на простом экспресс-сервере, связанном с простой базой данных PostgreSQL😅. Теперь, когда я узнал достаточно, чтобы начать, я могу перейти к созданию серверной части, которую вы не захотите пропустить, поэтому следите за обновлениями в блоге. Спасибо за прочтение и увидимся в следующем🙏.