Фреймворк Express

Фреймворк Express является самым популярным способом разработки сайтов на NodeJS. Часто он применяется совместно с NoSQL базой данных MongoDB. Для работы на сервере требуется NodeJS и NPM.

 

Фреймворк Express — создание проекта

Рассмотрим создание приложения на EXPRESS на сервере с Ubuntu 16.

apt-get update && apt-get isntall nodejs

 

Менеджер пакетов npm устанавливается вместе с nodejs, в других дистрибутивах может потребоваться установить его отдельно командой apt-getinstall npm.

 

В том, что пакеты присутствуют в системе можно убедиться проверив их версии

npm -v

1.4.21

 

nodejs -v

v8.11.2

 

Нужен будет также пакет node-express-generator

apt install node-express-generator

 

 

Фреймворк ставится глобально (от имени root или пользователя с sudo)

npm install -g express

 

Создадим каталог в котором будем работать

mkdir /var/node && cd /var/node/

 

Обращаемся к фреймворку

express

create : ./public/stylesheets/style.css
(node:18589) [DEP0013] DeprecationWarning: Calling an asynchronous function without callback is deprecated.

install dependencies:
$ cd . && npm install

run the app:
$ DEBUG=my-application ./bin/www

 

При этом в текущей директории будет создано некоторое количество каталогов и файлов, среди прочего файл package.json

 

Это файл со всеми модулями NodeJS, которые по умолчанию используются фреймворком.

 

Файл можно просмотреть и отредактировать вручную. Последней строкой в список зависимостей добавим mongoose указав в качестве версии *, это означает, что нужна последняя версия.

Mongoose — модуль для работы с NoSQL базой данных MongoDB. В NodeJS проектах она используется очень часто.

 

mcedit package.json

{
«name»: «application-name»,
«version»: «0.0.1»,
«private»: true,
«scripts»: {
«start»: «nodejs ./bin/www»
},
«dependencies»: {
«express»: «~4.0.0»,
«static-favicon»: «~1.0.0»,
«morgan»: «~1.0.0»,
«cookie-parser»: «~1.0.1»,
«body-parser»: «~1.0.0»,
«debug»: «~0.7.4»,
«jade»: «~1.3.0»,
«mongoose»: «*»
}
}

 

Все модули, упомянутые в package.json устанавливаются следующим образом:

npm install

 

После этого модно запускать приложение так как указано в выводе предпоследней команды

DEBUG=my-application ./bin/www

my-application Express server listening on port 3000 +0ms

 

my-application работает в режиме DEBUGна порту 3000.

 

netstat -nltp | grep 3000

tcp6 0 0 :::3000 :::* LISTEN 18745/nodejs

 

Обратившись в браузере по публичному IP адресу сервера на порт 3000 можно увидеть стартовую страницу Express.

express фреймворк
В общем случае приложения на NodeJS запускаются обращением к скрипту, который является точкой входа.

node app.js

 

После того как разработка приложения завершена его нужно запустить в production, т.е. настроить безотказную и постоянную работу на сервере. Читайте о том как это сделать.

Запись опубликована автором в рубрике JS.