1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/zisuzz-Nest-Web

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
README.md 3.1 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 28.11.2024 06:13 cea815e

Nest Web

Быстрый фреймворк на основе Nest, это просто потрясающе!

Быстрый старт

Внешнее развёртывание в Docker-контейнере

  • Создайте файл .env, а затем выполните команду cp .env.example .env. Замените параметры конфигурации среды в файле .env (например, параметры подключения к mysql/mariadb).
  • Установите зависимости с помощью команды yarn.
  • Запустите сервис командой yarn start (порт 3000).

Внутреннее развёртывание в Docker-контейнере

Просто запустите готовый скрипт bash:

$ ./init

Он создаст образ Docker, запустит приложение Nest в режиме разработки и будет прослушивать порт 80.

Тестирование

# Модульное тестирование
$ docker exec -it nest yarn test

# Интеграционное тестирование
$ docker exec -it nest yarn test:e2e

# Тестирование покрытия кода
$ docker exec -it nest yarn test:cov

Настройка окружения

В сервисе configservice считываются переменные конфигурации из файла .env. Включая конфигурацию соединения с MySQL и т. д.

Swagger

Доступен по адресу: http://localhost:3000/api/docs

Интеграция с TypeORM

TypeORM TypeORM используется как слой персистентности, поддерживает несколько баз данных, несколько соединений и т.д. Более подробную информацию можно найти в официальной документации.

Аутентификация с использованием JWT

Уже реализованы безопасные методы входа и регистрации. Также реализовано хеширование паролей.

Унифицированный возврат данных

В папке support/code реализован класс ApiResult. Фиксированный формат возврата:

{
  "timestamp": "2019-10-08T01:52:37.965Z",
  "Data": {},
  "status": 200,
  "message": "Запрос выполнен успешно"
}

Единая обработка бизнес-исключений

В папке support/code реализован метод throwBusinessException. Фиксированный формат возврата:

{
  "timestamp": "2019-10-30T04:24:53.418Z",
  "status": -10005,
  "message": "Данные не существуют, операция не выполнена"
}

TODO — Реализация кэширования словарей и пользовательских прав с использованием Redis

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/zisuzz-Nest-Web.git
git@api.gitlife.ru:oschina-mirror/zisuzz-Nest-Web.git
oschina-mirror
zisuzz-Nest-Web
zisuzz-Nest-Web
master