README.md |
Тестовое задание по Node.js + Express.js
-
Написать API для приёма контактных данных клиентов, с возможностью:
1.1 Добавлять данные в базу данных массивом, например: POST /contacts
{ source_id: 1, items: [ { "name": "Анна", "phone": 9001234453, "email": "mail1@gmail.com" }, { "name": "Иван", "phone": "+79001234123", "email": "mail2@gmail.com" } ] }
source_id
- id источника контактов, для примера достаточно 1 и 2phone
- в БД сохраняем в формате без +7 (10 цифр)phone
- не уникально, но может добавляться максимум 1 раз в сутки для каждогоsource_id
В ответе возвращаем количество добавленных контактов.
1.2 Находить данные по номеру телефона, например: GET /contacts?phone=9001234453
В ответе - массив с найденными данными.
1.3 Выводить все контакты, например: GET /contacts
В ответе - массив с найденными данными.
1.4 Удалять контакт, например: DELETE /contacts?phone=9001234453
В ответе - удаленный контакт.
-
Оптимизировать скорость добавления и поиска, т.к. контактов будет много
-
По желанию. Сделать простой интерфейс, например на Bootstrap. Можно использовать шаблонизатор (EJS, HBS).
При выполнении можно использовать фреймворк Express (или Adonis). В качестве БД предпочтительно использование SQLite.