- Выполните
brew install node
в командной строке - Склонируйте себе этот репозиторий:
git clone https://github.com/TIGRAN02/JB-Task-2.git
- Перейдите в папку с проектом:
cd JB-Task-2
- Выполните
npm run start
- Сервер запущен на
localhost:4343/
Относительный URL | Необходимые параметры QueryString | Результат |
---|---|---|
/ |
- | Все конференции |
/find_<field_name>/ |
<field_name> |
Поиск по какому-либо параметру. Более подробно в пояснениях к таблице |
/find_participants/ |
id |
Конференции, в которых принимает участие человек с данным id |
/find_date/ |
before или after |
Конференции, у которых дата начала позже after , а дата конца раньше before |
-
/
:- По умолчанию для каждой конференции выводятся все поля, кроме
_id
- По умолчанию для каждой конференции выводятся все поля, кроме
-
/find_<field_name>/
:-
Если
<field_name>
одно из:'_id', 'title', 'ytLink', 'country', 'city', 'link', 'status'
, то выводятся конференции, у которых значение поля<field_name>
совпадает со значением в QueryString или содержит его, сначала идут совпадающие -
Если
<field_name>
одно из:'projects', 'tags'
, то выводятся конференции, у которых в поле<field_name>
(это массив) есть элемент, в точности совпадающий со значением в QueryString
-
-
/find_date/
:- В случае указания только одного из параметров в QueryString, происходит отбор только по нему
⚠️ В случае не указания необходимого параметра QueryString запрос будет перенаправлен на /
с тем же суффиксом (см. далее)
Ко всем URLам можно добавить один из суффиксов:
Суффикс | Необходимые параметры QueryString | Результат |
---|---|---|
/exclude/ |
fields |
Выводит все поля, кроме указанных в поле fields |
/only/ |
fields |
Выводит только поля, указанные в поле fields |
Поле fields
может содержать как одно поле: ?field=title
, так и несколько: ?field=title&field=country
Список допустимых fields
: 'title', 'projects', 'location', 'tags', 'dateStart', 'dateFinish', 'participants', 'ytLink', 'attendance', 'link', 'comments', 'status'