- Выполните
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'