Přejít na hlavní obsah

ApiHelper

Balíček @churchapps/apihelper poskytuje pomocné nástroje na straně serveru pro všechna API ChurchApps založená na Express.js. Obsahuje základní třídu kontroléru, autentizaci pomocí JWT, databázové nástroje a integrace s AWS, na kterých závisí každý projekt API.

Než začnete

Co je obsaženo​

  • CustomBaseController -- základní třída pro kontroléry API postavená na inversify-express-utils
  • Auth -- autentizace JWT pomocí CustomAuthProvider, AuthenticatedUser a Principal
  • Databázové nástroje -- DB.query / DB.queryOne a třída Pool pro správu připojení k MySQL, plus MySqlHelper a DBCreator pro nastavení schématu
  • Integrace s AWS -- AwsHelper pro ukládání souborů do S3 a čtení z SSM Parameter Store
  • E-mail -- EmailHelper podporující přenosy SES a SMTP
  • Načítání konfigurace -- EnvironmentBase načítá připojovací řetězce a tajné údaje z proměnných prostředí nebo Parameter Store
  • Různé -- EncryptionHelper, FileStorageHelper, LoggingHelper, BasePermissions, SlugHelper

Nastavení pro místní vývoj​

Tento balíček je součástí pracovního prostoru Packages spolu s dalšími sdílenými knihovnami:

  1. Naklonujte pracovní prostor:

    git clone https://github.com/ChurchApps/Packages.git
  2. Nainstalujte závislosti v kořenovém adresáři pracovního prostoru:

    cd Packages && yarn install
  3. Sestavte balíček (zkompiluje TypeScript do dist/):

    yarn workspace @churchapps/apihelper build

    Nebo spusťte yarn build v kořenovém adresáři a sestavte všechny balíčky v pořadí podle závislostí.

Chcete-li otestovat změny uvnitř navazujícího API, použijte dočasný Yarn portal -- viz Místní vývoj s navazující aplikací.

Vydávání​

Vydání probíhají přes changesets: u každé změny spusťte v kořenovém adresáři pracovního prostoru yarn changeset a až budete připraveni vydat, spusťte yarn publish-all. Úplný postup najdete v přehledu sdílených knihoven.

info

Tento balíček je závislostí každého API ChurchApps -- základního Api, AskApi a LessonsApi. Při změnách jej otestujte na lokálně spuštěném API, než jej vydáte.

Související články​

  • Helpers -- základní balíček nástrojů, na kterém tento balíček závisí
  • Struktura modulů -- jak se kontroléry a autentizační middleware používají v modulech API
  • Místní nastavení API -- nastavení API pro místní vývoj