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.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