LoopBack - это широко расширяемая среда Node.js. с открытым исходным кодом.

Особенность :

  • Создавайте динамические сквозные API-интерфейсы REST с минимальным написанием кода или без него.
  • Доступ к данным из Oracle, MySQL, PostgreSQL, MS SQL Server, MongoDB, SOAP и других REST API.
  • Включите отношения моделей и элементы управления доступом для сложных API-интерфейсов.
  • Используйте встроенные сервисы push, геолокации и файловые сервисы для мобильных приложений.
  • Легко создавайте клиентские приложения с помощью SDK для Android, iOS и JavaScript.
  • Запустите приложение локально или в облаке.

Установка:

`npm install @ loopback / cli -g`

Интерфейс командной строки формирует проект или создает приложение Скелтон.

Создайте новый проект:

`$ lb4 app`

Структура папки:

Назначение файла

index.ts

Позволяет импортировать содержимое папки src (для использования в другом месте)

index.js

Файл верхнего уровня, соединяющий компоненты приложения.

package.json

Манифест пакета вашего приложения. См. Подробности в package.json.

tsconfig.json

Конфигурация проекта TypeScript. См. Подробности в tsconfig.json.

tslint.json

Конфигурация TSLint

tslint.build.json

Конфигурация TSLint (только сборка)

README.md

README на основе Markdown, созданный для вашего приложения.

ЛИЦЕНЗИЯ

Копия лицензии MIT. Если вы не хотите использовать эту лицензию, удалите этот файл.

src / application.ts

Класс приложения, по умолчанию расширяющий RestApplication. Это корень вашего приложения, и именно здесь ваше приложение будет настроено. Он также расширяет RepositoryMixin, который определяет источник данных.

src / index.ts

Отправная точка вашего микросервиса. Этот файл создает экземпляр вашего приложения, запускает загрузчик, затем пытается запустить экземпляр RestServer, привязанный к приложению.

src / sequence.ts

Расширение класса Sequence, используемое для определения набора действий, выполняемых во время запроса / ответа REST.

SRC / контроллеры / README.md

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

SRC / контроллеры / ping.controller.ts

Базовый контроллер, который отвечает на запросы GET в / ping.

src / datasources / README.md

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

src / models / README.md

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

src / repositories / README.md

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

src / __ tests __ / README.md

Пожалуйста, поместите свои тесты в эту папку.

src / __ тесты __ / accept / ping.controller.acceptance.ts

Пример теста для контроллера ping в src / controllers.

.mocharc.json

Конфигурация Mocha для запуска тестов вашего приложения.

Добавить модель пользователя:

Модель описывает объекты бизнес-домена и определяет список свойств с именем, типом и другими ограничениями.

Модели используются для обмена данными по сети или между различными системами.

Построение вашей пользовательской модели

Список пользователей - это все о сотрудниках. Чтобы это была полезная организация.

Модель пользователя имеет следующие свойства:

Id: уникальный идентификатор

Имя: Имя сотрудника

Отдел: Название отдела.

EmpAddress: адрес сотрудника.

Источники данных

Источники данных - это способ подключения LoopBack к различным источникам данных, таким как базы данных.

Репозитории

Шаблон репозитория - одно из наиболее фундаментальных различий между LoopBack 3 и 4. В LoopBack 3 вы должны использовать сами определения классов модели для выполнения операций CRUD. В LoopBack 4 уровень, отвечающий за это, был отделен от определения самой модели на уровне репозитория.

Контроллеры

В LoopBack 4 контроллеры обрабатывают жизненный цикл запроса-ответа для вашего API. Каждая функция на контроллере может быть адресована индивидуально для обработки входящего запроса (например, POST-запроса к /todos), для выполнения бизнес-логики и для возврата ответа.

Controller - это класс, реализующий операции, определенные API приложения. Он реализует бизнес-логику приложения и действует как мост между HTTP / REST API и моделями домена / базы данных.

Давайте попробуем наше приложение! Во-первых, вам нужно запустить приложение.

`npm start`

Сервер работает по адресу http: // [:: 1]: 3000

Без написания однострочного кода API готов. Мы можем увидеть весь API для связанной модели.

Http: // localhost: 3000 / explorer / # /

Адрес Github: https://github.com/kodeeramachandran/loopback4