|
|
@@ -32,7 +32,7 @@ https://www.reddit.com/r/node/comments/1m6m7pq/opensourcing_my_nodejs_express_mo
|
|
|
Для больших проектов лучше использовать [генератор](https://expressjs.com/ru/starter/generator.html), но там много лишнего. Создадим [простой проект](https://expressjs.com/ru/starter/hello-world.html):
|
|
|
|
|
|
1. Создайте каталог для проекта и перейдите в него
|
|
|
-1. Запустите команду `npm init` для создания проекта
|
|
|
+1. Запустите команду `npm init` для создания проекта (__Node Packet Manager__ - менеджер пакетов Node входит в дистрибутив `Node.js`)
|
|
|
|
|
|
На все вопросы отвечаем по-умолчанию, кроме **entry point** (точка входа), тут пишем `app.js` (можно оставить и по-умолчанию, это ни на что не влияет)
|
|
|
|
|
|
@@ -50,7 +50,7 @@ https://www.reddit.com/r/node/comments/1m6m7pq/opensourcing_my_nodejs_express_mo
|
|
|
type: (commonjs)
|
|
|
```
|
|
|
|
|
|
-1. Добавьте в зависимости проекта `express.js` командой `npm i express`
|
|
|
+1. Добавьте в зависимости проекта пакет `express.js` командой `npm install express`
|
|
|
|
|
|
1. Создайте файл `.gitignore`
|
|
|
|
|
|
@@ -60,6 +60,8 @@ https://www.reddit.com/r/node/comments/1m6m7pq/opensourcing_my_nodejs_express_mo
|
|
|
|
|
|
В каталог `node_modules` устанавливаются зависимости проекта, их хранить в репозитории не нужно. Ссылки на зависимости записываются в фалй `package.json` и их можно восстановить командой `npm install`
|
|
|
|
|
|
+ >Внимание!!! За каталог `node_modules` в репозитории ставлю `2` - сервер не резиновый
|
|
|
+
|
|
|
Ниже пример списка зависимостей проекта:
|
|
|
|
|
|
```json
|
|
|
@@ -83,7 +85,8 @@ https://www.reddit.com/r/node/comments/1m6m7pq/opensourcing_my_nodejs_express_mo
|
|
|
const port = 3000
|
|
|
|
|
|
app.get('/', (req, res) => {
|
|
|
- res.send('Hello World!')
|
|
|
+ // в ответ на запрос возвращаем просто текст
|
|
|
+ res.send('Hello World!')
|
|
|
})
|
|
|
|
|
|
app.listen(port, () => {
|
|
|
@@ -101,15 +104,15 @@ https://www.reddit.com/r/node/comments/1m6m7pq/opensourcing_my_nodejs_express_mo
|
|
|
|
|
|
* `app.get('/', (req, res) => {...})` - **endpoint** (конечная точка), которая будет обрабатывать входящий запрос. В данном случае метод `GET` по пути `/`.
|
|
|
|
|
|
- В параметрах лямбда функции приходят объекты `req` (_request_ - запрос, из этого объекта мы можем извлечь параметры и тело запроса) и `res` (_response_ - ответ, сюда мы должны вернуть результат запроса)
|
|
|
+ В параметрах лямбда функции объекты `req` (_request_ - запрос, из этого объекта мы можем извлечь параметры и тело запроса) и `res` (_response_ - ответ, сюда мы должны вернуть результат запроса)
|
|
|
|
|
|
- * `app.listen(port, () => {...})` - запуск сервера на указанном порту
|
|
|
+ * `app.listen(port, () => {...})` - запуск сервера, ждущего входящих запросов на указанном порту
|
|
|
|
|
|
Можно было не заводить переменную `port`, а прямо сюда вписать `3000`, но обычно такие параметры задаются _переменными окружения_, с которыми мы познакомимся чуть позже.
|
|
|
|
|
|
Запустить проект можно командой `node app.js`, либо настройть запуск в VSCode.
|
|
|
|
|
|
-В браузере должна открываться страница http://localhost:3000, возвращающая `Hello World!`
|
|
|
+В браузере должна открываться страница [`localhost:3000`](http://localhost:3000), возвращающая `Hello World!`
|
|
|
|
|
|

|
|
|
|