< Express

Express - Gyors kezdés

Szerző: Sallai András

Copyright © 2023, Sallai András

Szerkesztve: 2025

Licenc: CC Attribution-Share Alike 4.0 International

Web: https://szit.hu

Bevezetés

Ebben a leírásban a sip csomagot használjuk egy projekt létrehozására, ami ES modulokkal dolgozik.

Kezdés

Hozzuk létre a projektet a sip alkalmazással:

npm create sip@latest

Adjuk meg a projekt nevét, például „api”:

Project name: › api

Válasszuk a Express API lehetőséget.

Express API

A projekt elkészült, de telepítsük a függőségeket a továbbiakhoz:

npm install

API kulcs generálás

Ügyeljünk arra, hogy a függőségek legyenek telepítve.

Az alkalmazásnak szüksége lesz egy API kulcsra a beállítások állományban, ami a következő helyen található: config/default.json.

Generáljunk egyet:

node op key:generate

Beállítások

A beállítások a config/default.json fájlban találhatók.

Alapértelmezetten Sqlite memória-adatbázis van beállítva. Memória adatbázis esetén a szerver minden újraindításánál az adatok törlésre kerülnek. Fejlesztői szerver indításánál ez minden mentés esetén megtörténik, vagyis minden mentésnél üres táblákat kapunk.

A config könyvtár változását nem figyeli a fejlesztői szerver. Ha itt változtatunk, mindenképpen újra kell indítani a szervert.

Tartós Sqlite fájlba mentés esetén a config/default.json fáljban a db:path állítsuk például:

"path": "database.sqlite"

Beállíthatunk MariaDB (MySQL) adatbázist is. Ekkor adjuk meg host, name, user és pass értékeket is.

Fejlesztői szerver indítása

Ügyeljünk arra, hogy a függőségek legyenek telepítve.

Fejlesztői szerver indítása:

npm run dev

Ha fejlesztői szervert indítunk, minden mentésnél újraindul az API szerver, beolvasva a változásokat.

Normál szerver indítása:

npm start

Ha normál szervert indítottunk és javítottuk a kódunkat a szervert magunknak kell újraindítani.

Generátorok

Ügyeljünk arra, hogy a függőségek legyenek telepítve.

A modell és a kontroller nevét egyesszámban adjuk meg. Legyen például dolgozók angolul, employee:

Modell generálása:

node op make:model employee

Kontroller generálása:

node op make:controller employee

Egyéb

A routing gépeléshez lehet egy snippets:

https://github.com/oktat/vscode-exapi-snippets

Amíg nem volt sip alkalmazás az exapi klónozása volt a fentiek helyett:

https://github.com/oktat/exapi