В настоящее время существует множество инструментов для создания простого проекта, такого как экспресс-генератор. Это очень удобно, но вы должны подумать, как построить проект с нуля. В этой статье я покажу вам, как я настроил проект с помощью Expressjs.

Установка зависимостей

Во-первых, мы создадим папку с именем simple-project с помощью команды mkdir simple-project, затем перейдем в каталог с помощью cd simple-project. В этом проекте мы будем использовать yarn — менеджер пакетов, такой как npm — для управления зависимостями, введите yarn init, и yarn задаст вам вопрос, чтобы создать package.json . Когда закончите, вы увидите основную информацию, как показано ниже:

Затем мы установим следующие пакеты:

  • экспресс — веб-фреймворк для Node.js
  • morgan — ПО промежуточного слоя для регистрации HTTP-запросов
  • cors — пакет помогает нам включить CORS с различными параметрами.
  • шлем — Пакет установит заголовки HTTP для повышения безопасности нашего приложения.

Запустите yarn add express helmet morgan cors, чтобы добавить все вышеперечисленные пакеты. Давайте создадим app.js с содержимым ниже, чтобы создать страницу Hello World:

Теперь в папке выполните команду node app.js, чтобы запустить проект, и откройте браузер, затем перейдите к localhost:3000, чтобы увидеть результат.

Реализовать простой проект

Давайте посмотрим, как мы создадим маршруты для обработки этих методов: getUser, login, logout, getProducts, addProducts, updateProducts. Поэтому нам нужны маршруты product и user. Но это личное мнение, не стесняйтесь менять на те функции, которые вам нравятся.

Во-первых, создайте 4 папки:

  • контроллеры: хранить функции обработчика для каждой конечной точки
  • промежуточное ПО: в этом проекте мы будем использовать папку для хранения авторизованного промежуточного ПО.
  • utils: хранить полезные функции
  • маршруты: хранить файлы маршрутизации для приложения

Теперь мы рассмотрим каждую папку

Утилиты

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

Контроллеры

В этой папке у нас есть два файла, product.controller.js и user.controller.js. Это должно выглядеть так, как показано ниже:

И user.controller.js

ПО промежуточного слоя

Нам нужно запретить некоторые конечные точки для неаутентифицированных пользователей. Итак, давайте добавим файл с именем authMidllewares.js со следующим содержимым:

В приведенном выше коде мы сделаем:

  • Получите token из заголовка запроса и проверьте его
  • Возврат, если токен недействителен
  • Вызовите next(), если оператор условия верен и позволяет пользователям перейти к фактической функции.

Маршруты

Поскольку мы создаем простые проекты, у нас есть только один файл index.js, давайте посмотрим его реализацию.

Есть некоторые функции, такие как updateProducts, addProduct, getProducts, getUsers, logout. Мы хотим, чтобы пользователь должен был войти в систему, прежде чем использовать эти функции. Поэтому добавление authMiddleware для предотвращения запросов пользователей, не вошедших в систему.

Обновление основного файла (App.js)

На последнем шаге мы применим маршрут к Express и добавим некоторую опцию, чтобы наше приложение могло получать данные из body.

Тестирование проекта

Запустите команду node app.js и перейдите к locahost:3000/api/product. Вы увидите сообщение, как показано ниже:

В заключении

В этой статье я рассказал, как создать простой проект с помощью Node.js. Не стесняйтесь добавлять некоторые дополнительные функции, такие как CRUD с MongoDB, … Вы поймете больше и надеемся, что вам понравится изучение Node.Js :D :D
Спасибо за чтение!!