Erstellen und Ausführen eines LoopBack-Projekts
Was ist LoopBack?
LoopBack ist ein hoch skalierbares Node.js-Framework, das von IBM entwickelt wurde und zur Erstellung von APIs und Microservices verwendet wird. Es bietet leistungsstarke Werkzeuge und Funktionen, die es Entwicklern ermöglichen, APIs einfach zu erstellen, zu testen und bereitzustellen. LoopBack verwendet eine modellgesteuerte Entwicklungsweise (MDD), um schnell RESTful APIs zu generieren und unterstützt verschiedene Datenbankverbindungen.
Hauptmerkmale und Vorteile von LoopBack
- Modellgesteuerte Entwicklung: Automatische Generierung von RESTful APIs durch Definition von Modellen.
- Unterstützung mehrerer Datenbanken: Unterstützung für verschiedene Datenbanken wie MongoDB, MySQL, PostgreSQL, MariaDB etc.
- Leistungsstarke CLI-Werkzeuge: Die LoopBack CLI bietet eine Vielzahl von Befehlen, die die Erstellung und Verwaltung von Projekten vereinfachen.
- Reichhaltige Plugins und Erweiterungen: Zahlreiche Plugins und Erweiterungen ermöglichen eine einfache Integration von Drittanbieter-Diensten und -Bibliotheken.
- Eingebaute Benutzerauthentifizierung und -autorisierung: Bietet leistungsstarke Mechanismen zur Benutzerauthentifizierung und -autorisierung.
Mit LoopBack können Entwickler schnell leistungsstarke und skalierbare Webanwendungen und APIs erstellen.
LoopBack-Projekt mit ServBay erstellen und ausführen
In diesem Artikel werden wir die von ServBay bereitgestellte Node.js-Umgebung nutzen, um ein LoopBack-Projekt zu erstellen und auszuführen. Wir nutzen die "Host"-Funktion von ServBay, um den Webserver einzurichten und ermöglichen den Zugriff auf das Projekt über Reverse Proxy.
LoopBack-Projekt erstellen
LoopBack CLI installieren
Stellen Sie zunächst sicher, dass Sie die von ServBay bereitgestellte Node.js-Umgebung installiert haben. Installieren Sie dann die LoopBack CLI global mit folgendem Befehl:
bashnpm install -g @loopback/cli
1Projekt initialisieren
Erstellen Sie ein neues LoopBack-Projekt im empfohlenen Stammverzeichnis von ServBay,
/Applications/ServBay/www
:bashcd /Applications/ServBay/www lb4 app servbay-loopback-app
1
2Geben Sie den Projektnamen (empfohlen:
servbay-loopback-app
) ein und wählen Sie weitere Optionen nach Bedarf.Abhängigkeiten installieren
Wechseln Sie in das Projektverzeichnis und installieren Sie die Abhängigkeiten:
bashcd servbay-loopback-app npm install
1
2
LoopBack-Projektausgabe ändern
Ändern der Datei
src/controllers/ping.controller.ts
Öffnen Sie die Datei
src/controllers/ping.controller.ts
und ändern Sie den Inhalt, sodass die Webseite "Hello ServBay!" ausgibt:typescriptimport {get} from '@loopback/rest'; export class PingController { constructor() {} @get('/ping') ping(): string { return 'Hello ServBay!'; } }
1
2
3
4
5
6
7
8
9
10
Entwicklungsmodus starten
Entwicklungsserver starten
Starten Sie den Entwicklungsserver und geben Sie den Port (z.B. 8585) an:
bashPORT=8585 npm start
1Dadurch wird ein Entwicklungsserver lokal gestartet und der Port 8585 freigegeben.
Reverse Proxy in ServBay konfigurieren
Nutzen Sie die "Host"-Funktion von ServBay, um über Reverse Proxy auf den Entwicklungsserver zuzugreifen. Fügen Sie eine neue Reverse Proxy-Einstellung in den "Host" Einstellungen von ServBay hinzu:
- Name:
My first LoopBack dev site
- Domain:
servbay-loopback-test.dev
- Hosttyp:
Reverse Proxy
- IP:
127.0.0.1
- Port:
8585
Detaillierte Anweisungen finden Sie unter Hinzufügen einer Nodejs-Entwicklungswebsite.
- Name:
Zugriff auf den Entwicklungsmodus
Öffnen Sie Ihren Browser und rufen Sie
https://servbay-loopback-test.dev/ping
auf, um das Projekt in Echtzeit zu sehen. Da ServBay benutzerdefinierte Domains und kostenlose SSL-Zertifikate unterstützt, genießen Sie eine höhere Sicherheit.
Produktionsmodus bereitstellen
Produktionsumgebung vorbereiten
Stellen Sie sicher, dass Ihr Projekt in der Produktionsumgebung fehlerfrei läuft. LoopBack-Projekte erfordern in der Regel keine speziellen Build-Schritte, aber möglicherweise müssen Umgebungsvariablen gesetzt oder andere Konfigurationen vorgenommen werden.
Produktionsserver starten
Starten Sie den Produktionsserver und geben Sie den Port (z.B. 8586) an:
bashPORT=8586 NODE_ENV=production npm start
1Reverse Proxy in ServBay konfigurieren
Nutzen Sie die "Host"-Funktion von ServBay, um über Reverse Proxy auf den Produktionsserver zuzugreifen. Fügen Sie eine neue Reverse Proxy-Einstellung in den "Host" Einstellungen von ServBay hinzu:
- Name:
My first LoopBack production site
- Domain:
servbay-loopback-test.prod
- Hosttyp:
Reverse Proxy
- IP:
127.0.0.1
- Port:
8586
- Name:
Zugriff auf den Produktionsmodus
Öffnen Sie Ihren Browser und rufen Sie
https://servbay-loopback-test.prod
auf, um die Produktionsversion zu sehen. Dank benutzerdefinierter Domains und kostenloser SSL-Zertifikate von ServBay wird Ihre Website sicherer und vertrauenswürdiger.
Datenbankverbindung
ServBay bietet Unterstützung für Redis, MariaDB, PostgreSQL und MongoDB. Hier sind Beispiele, wie diese Datenbanken verbunden werden können.
Verbinden mit MongoDB
Installieren Sie
@loopback/connector-mongodb
:bashnpm install --save @loopback/connector-mongodb
1Konfigurieren Sie dann die Datenquelle im Projekt:
typescript// src/datasources/mongodb.datasource.ts import {juggler} from '@loopback/repository'; const config = { name: 'mongodb', connector: 'mongodb', url: 'mongodb://localhost/servbay-loopback-app', host: 'localhost', port: 27017, user: '', password: '', database: 'servbay-loopback-app', }; export class MongodbDataSource extends juggler.DataSource { static dataSourceName = 'mongodb'; constructor() { super(config); } }
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20Verbinden mit Redis
Installieren Sie
loopback-connector-redis
:bashnpm install --save loopback-connector-redis
1Konfigurieren Sie dann die Datenquelle im Projekt:
typescript// src/datasources/redis.datasource.ts import {juggler} from '@loopback/repository'; const config = { name: 'redis', connector: 'redis', url: 'redis://localhost:6379', }; export class RedisDataSource extends juggler.DataSource { static dataSourceName = 'redis'; constructor() { super(config); } }
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15Verbinden mit MariaDB
Installieren Sie
@loopback/connector-mysql
:bashnpm install --save @loopback/connector-mysql
1Konfigurieren Sie dann die Datenquelle im Projekt:
typescript// src/datasources/mariadb.datasource.ts import {juggler} from '@loopback/repository'; const config = { name: 'mariadb', connector: 'mysql', url: '', host: 'localhost', port: 3306, user: 'root', password: 'password', database: 'servbay_loopback_app', }; export class MariaDbDataSource extends juggler.DataSource { static dataSourceName = 'mariadb'; constructor() { super(config); } }
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20Verbinden mit PostgreSQL
Installieren Sie
@loopback/connector-postgresql
:bashnpm install --save @loopback/connector-postgresql
1Konfigurieren Sie dann die Datenquelle im Projekt:
typescript// src/datasources/postgresql.datasource.ts import {juggler} from '@loopback/repository'; const config = { name: 'postgresql', connector: 'postgresql', url: '', host: 'localhost', port: 5432, user: 'user', password: 'password', database: 'servbay_loopback_app', }; export class PostgresqlDataSource extends juggler.DataSource { static dataSourceName = 'postgresql'; constructor() { super(config); } }
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Durch die oben genannten Schritte haben Sie erfolgreich ein LoopBack-Projekt erstellt und ausgeführt, die von ServBay bereitgestellten Funktionen genutzt, um Ihr Projekt zu verwalten und darauf zuzugreifen, und mehrere Datenbanken verbunden.