Итак, я вижу, вы готовы пожертвовать своим счастьем и решить не спать допоздна ни с кем, кроме как с чашечкой кофе, да? Я предсказываю, что вы расстались со своей девушкой/парнем и планируете постоянно смотреть на экран, полный цветных линий, не имея никакого смысла, верно?
Нет, вам не нужно делать все это, чтобы стать бэкэнд-разработчиком. 😂 Вам просто нужно сохранять последовательность и быть терпеливым в каждой сложной ситуации.
В этом уроке я покажу вам, как легко начать с NodeJs, ExpressJs, MongoDb и научиться создавать REST API.
Предварительные знания: я прошу вас изучить Javascript, так как вся концепция основана на Javascript. Основные понятия, которые вы должны знать:
- Основные операции Арифметика и Присваивание
- Функции (Определения, Параметры, Вызовы)
- Объекты (определения, свойства, методы, отображение)
- Массивы и Методы массивов (включая Сортировку, Итерацию)
- Строки и Строковые методы (включая Поиск, Шаблоны)
- Дата и время
- Регулярное выражение
- Если еще, Циклы
- Асинхронные функции (Обратные вызовы, Асинхронные, Промисы, Асинхронные/Ожидание)
- JSON
- Методы HTTP и Сообщения HTTP
Это всего лишь некоторые основные темы javascript, которые вы должны изучить, прежде чем продолжать писать NodeJS. Теперь, если вы изучили все темы, упомянутые выше, мы можем перейти к следующим шагам.
Шаг 0:
Загрузите и установите NodeJs (среда выполнения Javascript).
Шаг 1 — Настройка текстового редактора:
Во-первых, мы загружаем и устанавливаем любой код/текстовый редактор (предлагаемый: Microsoft Visual Studio Code). Затем мы открываем рабочую область или папку в нашем редакторе.

Затем открываем наш терминал в выбранной папке.

Шаг 2. Инициализация веб-приложения.
Теперь в терминале мы запускаем эту команду.
npm init -y
или, если вы хотите быть более конкретным, запустите эту команду.
npm init
Эта команда задаст нам несколько основных вопросов, таких как название нашего приложения, версия, описание, ключевые слова и т. д. Нажимайте клавишу ввода после каждого ввода. После этого мы видим, что в выбранной нами папке был создан новый файл с именем «package.json».

Давайте откроем package.json и в объекте «скрипты» переименуем «test» в «start» и изменим его значение на «node index. js».

Затем мы создаем файл с именем «index.js» в нашей рабочей папке.

Шаг 3 — Установка ExpressJ:
Опять же, в терминале, мы запускаем эту команду ниже, чтобы установить ExpressJ.
npm install express
Мы видим, что в нашем рабочем пространстве создана новая папка с именем «node_modules». Открывая package.json, мы видим «express» и его версию в качестве значения в объекте «dependencies».

Шаг 4. Запуск сервера
Теперь вернемся к файлу index.js и напишем следующий код.
const express = require("express"); //importing the express function
const app = express(); //initializing an express app
const PORT = 5000; //defining a port
app.listen(PORT, () => { //exposing the app on the port
console.log(`Server is running on port: ${PORT}`);
//Outputs when the server starts
});
В этом коде сначала мы импортируем экспресс-функцию из экспресс-модуля. Затем мы вызываем функцию и сохраняем ее в константе с именем «приложение». После этого мы определяем константу порта (возьмем 5000) для запуска нашего приложения на локальном сервере указанного порта на нашей машине. Затем мы используем метод listen в приложении и передаем PORT и функцию обратного вызова (которая при выполнении печатает строку в терминале) в качестве параметров.
Теперь мы запускаем следующую команду в терминале.
npm start
Это будет отображаться так:

Поздравляю! 🎊 Мы успешно создали сервер, но сейчас не можем получить доступ к нашему серверу.
Шаг 5. Настройка маршрута.
Если мы хотим получить доступ к нашему серверу, мы должны создать маршрут API к нашему серверу. Допустим, если кто-то хочет получить доступ к домашней странице нашего сервера с помощью метода GET, наш сервер поприветствует его в качестве ответа «Добро пожаловать на домашнюю страницу». Поэтому мы добавляем следующий код между строкой №. 2 (где мы инициализировали приложение) и номер строки. 4 (где мы выставили приложение на порт) и сохраните его.
app.get("/", async (req, res) => { //GET method on / route
res.status(200).send("Welcome to the Home Page");
//sending response with status code 200
console.log("A user visited"); //outputs on terminal
});
В этом коде мы используем метод get в приложении и передаем два параметра: один — это маршрут, который хочет посетить пользователь («/» представляет домашнюю страницу), а второй параметр — это асинхронная функция, которая принимает запрос. объект и объект ответа в качестве двух его параметров. Асинхронная функция возвращает объект ответа с кодом состояния 200 (ОК) и со строкой. Функция также выводит вывод в терминал каждый раз, когда мы обращаемся к нашему серверу.

Для демонстрации на терминале нажмите Ctrl + C, чтобы остановить сервер, работающий с предыдущим экземпляром кода, и снова перезапустите его, выполнив команду «npm start». Он будет печатать тот же вывод на терминале. Затем откройте любой веб-браузер и перейдите на «localhost:5000». Мы можем увидеть сообщение «Добро пожаловать на домашнюю страницу» на веб-странице, и если мы проверим нашу консоль, мы увидим вывод «Пользователь посетил». Каждый раз, когда мы нажимаем «Обновить» в браузере, сервер отвечает одним и тем же сообщением, но в терминале мы видим, что вывод «Пользователь посетил» был напечатан несколько раз. Что происходит, так это то, что каждый раз, когда мы обновляем браузер, мы отправляем новый запрос с методом GET в наше приложение. Таким образом, приложение повторно запускает асинхронную функцию и выводит вывод в терминал каждый раз, когда регистрирует новый запрос с помощью метода GET.


Итак, я думаю, что это наш первый урок. Оставайтесь с нами для более продвинутых тем.