ApiHelper
Pakken @churchapps/apihelper gir server-side verktøy for alle ChurchApps Express.js-API-er. Den inkluderer basiskontroller-klassen, JWT-autentisering, databaseverktøy og AWS-integrasjoner som hvert API-prosjekt er avhengig av.
Før du begynner
- Installer Node.js og Git -- se Forutsetninger
- Gjør deg kjent med oppsettet og utgivelsesflyten til Packages-arbeidsområdet
- Denne pakken avhenger av
@churchapps/helpers(som en peer-avhengighet) og re-eksporterer den
Hva som er inkludert
- CustomBaseController -- basisklasse for API-kontrollere, bygget på
inversify-express-utils - Auth -- JWT-autentisering via
CustomAuthProvider,AuthenticatedUserogPrincipal - Databaseverktøy --
DB.query/DB.queryOneogPool-klassen for MySQL-tilkoblingsstyring, plussMySqlHelperogDBCreatorfor skjemaoppsett - AWS-integrasjoner --
AwsHelperfor S3-fillagring og lesing fra SSM Parameter Store - E-post --
EmailHelpermed støtte for SES- og SMTP-transporter - Konfigurasjonslasting --
EnvironmentBaseleser tilkoblingsstrenger og hemmeligheter fra miljøvariabler eller Parameter Store - Diverse --
EncryptionHelper,FileStorageHelper,LoggingHelper,BasePermissions,SlugHelper
Oppsett for lokal utvikling
Denne pakken bor i Packages-arbeidsområdet sammen med de andre delte bibliotekene:
-
Klon arbeidsområdet:
git clone https://github.com/ChurchApps/Packages.git -
Installer avhengigheter ved roten av arbeidsområdet:
cd Packages && yarn install -
Bygg (kompilerer TypeScript til
dist/):yarn workspace @churchapps/apihelper buildEller kjør
yarn buildved roten for å bygge hver pakke i avhengighetsrekkefølge.
For å teste endringer inne i et konsumerende API, bruk en midlertidig Yarn-portal -- se Lokal utvikling mot en konsumerende app.
Publisering
Utgivelser går gjennom changesets: kjør yarn changeset ved roten av arbeidsområdet for hver endring, og deretter yarn publish-all når du er klar til å publisere. Se Oversikt over delte biblioteker for hele flyten.
Denne pakken er en avhengighet for hvert ChurchApps-API -- kjerne-Api-et, AskApi og LessonsApi. Når du gjør endringer, test mot et API lokalt før publisering.
Relaterte artikler
- Helpers -- Den grunnleggende verktøypakken som denne pakken avhenger av
- Modulstruktur -- Hvordan kontrollere og autentiseringsmellomvare brukes i API-moduler
- Lokalt API-oppsett -- Sette opp API-et for lokal utvikling