Упражнение. Создание веб-приложения Express
Tailwind Traders поручил вам создать простой API с помощью платформы Express. Интернет-магазин хочет оценить Express, чтобы понять, насколько легко с ним работать. С этой целью вам нужно создать веб-приложение, которое обслуживает разные маршруты.
Открытие проекта в контейнере разработки
Используйте предоставленный контейнер разработки для выполнения упражнений в этом модуле. Контейнер разработки предварительно настроен с помощью инструментов, необходимых для выполнения упражнений.
Запустите процесс создания нового пространства кода GitHub в
main
ветвиMicrosoftDocs/node-essentials
репозитория GitHub.На странице "Создание пространства кода" просмотрите параметры конфигурации пространства кода и выберите "Создать новое пространство кода"
Дождитесь запуска пространства кода. Этот процесс запуска может занять несколько минут.
Откройте новый терминал в пространстве кода.
Убедитесь, что Node.js установлен в вашей среде:
node --version
Контейнер разработки использует версию Node.js LTS, например
v20.5.1
. Точную версию может отличаться.Остальные упражнения в этом проекте происходят в контексте этого контейнера разработки.
Создание простейшего веб-приложения с помощью Express
Создайте базовое приложение для обработки запросов.
Откройте терминал в контейнере разработки.
Используйте следующие команды, чтобы создать проект Node.js и установить платформу Express:
mkdir my-express-app cd my-express-app npm init -y npm install express
Команда
init
создает файл по умолчанию package.json для вашего проекта Node.js. Командаinstall
устанавливает платформу Express.Откройте файл package.json в редакторе кода.
В разделе
dependencies
найдите записьexpress
:"dependencies": { "express": "^4.18.2" ... }
Эта запись означает, что установлена платформа Express. Ваша версия может быть более последней. В этом примере кода используется версия 4 платформы Express.
В редакторе кода в папке
my-express-app
создайте файл с именем app.js и добавьте следующий код:const express = require('express'); const app = express(); const port = 3000; app.get('/', (req, res) => res.send('Hello World!')); app.listen(port, () => console.log(`Example app listening on port ${port}! http://localhost:${port}/`));
Код создает экземпляр приложения Express, вызывая метод
express()
. Это функция верхнего уровня, экспортируемая модулем Express. Все дальнейшие настройки и функциональные возможности добавляются с помощью переменнойapp
.Обратите внимание, как код настраивает маршрут на косую черту
/
, корень с синтаксисом:app.get('/', (req, res) => res.send('Hello World!'));
После настройки маршрута код запускает веб-приложение, вызывая метод
listen()
:app.listen(port, () => console.log('Example app listening on port ${port}!'));
Откройте терминал для этой вложенной папки, щелкнув правой кнопкой мыши имя вложенной папки и выбрав "Открыть в интегрированном терминале".
В сеансе терминала выполните следующую команду, чтобы запустить веб-приложение Express:
node app.js
Должен появиться следующий результат:
Example app listening at http://localhost:3000
Эти выходные данные означают, что приложение работает и готово к получению запросов.
Вы можете щелкнуть правой кнопкой мыши и выбрать URL-адрес в терминале или открыть браузер, когда Visual Studio Code появится уведомление с просьбой открыть в браузере. Должен появиться следующий результат:
Hello World!
В окне терминала нажмите клавиши CTRL+C, чтобы остановить веб-программу Express.
Создание веб-приложения, возвращающего данные в формате JSON
Используйте тот же файл app.js для добавления нового маршрута.
Откройте файл
app.js
в редакторе кода.Добавьте следующий код после существующего
app.get
синтаксиса после кода для первого маршрута:/
app.get('/products', (req, res) => { const products = [ { id: 1, name: 'hammer' }, { id: 2, name: 'screwdriver' }, { id: 3, name: 'wrench' }, ]; res.json(products); });
Убедитесь, что файл app.js выглядит следующим образом:
const express = require('express'); const app = express(); const port = 3000; app.get('/', (req, res) => res.send('Hello World!')); app.get('/products', (req, res) => { const products = [ { id: 1, name: 'hammer' }, { id: 2, name: 'screwdriver' }, { id: 3, name: 'wrench' }, ]; res.json(products); }); app.listen(port, () => { console.log(`Example app listening on port ${port}! http://localhost:${port}/`); });
Сохраните изменения в файле app.js и закройте файл.
В сеансе терминала выполните следующую команду, чтобы перезапустить веб-приложение Express:
node app.js
Должен появиться следующий результат:
Example app listening at http://localhost:3000
В браузере вернитесь на вкладку с предыдущего шага и добавьте новый маршрут в
/products
конец URL-адреса. Вы увидите следующие выходные данные JSON:[{"id":1,"name":"hammer"},{"id":2,"name":"screwdriver"},{"id":3,"name":"wrench"}]
В окне терминала нажмите клавиши CTRL+C, чтобы остановить веб-программу Express.
Поздравляем! Вы реализовали второй маршрут, который может обслуживать статические данные JSON.