Die Kommunikations- und Datenübertragung zwischen dem Frontend und dem Backend einer Anwendung erfolgt über APIs (Anwendungsprogrammierschnittstelle). Es gibt viele verschiedene Arten von APIs, die verwendet werden, um zwischen den Vorder- und Back-End-Anwendungen wie RESTful-API, SOAP-API, GraphQL-API usw. zu kommunizieren, usw. Die GraphQL -API ist eine relativ neue Technologie und ist viel schneller als andere verfügbare Arten von APIs. Das Abrufen von Daten aus der Datenbank mithilfe der GraphQL -API ist viel schneller als die Rest -API. Während der Verwendung von GraphQL -API hat der Client die Kontrolle, nur die erforderlichen Daten abzurufen, anstatt alle Details zu erhalten. Deshalb arbeitet die GraphQL -API schneller als die REST -API.
Pakete installieren
Wir werden einen Knoten bauen.JS -Anwendung mithilfe der GraphQL -API, daher müssen wir den Knoten installieren.JS und NPM dafür, bevor Sie das Projekt starten.
Ubuntu@Ubuntu: ~ $ sudo apt -Get -Update -y
Ubuntu@Ubuntu: ~ $ sudo apt-Get Installieren Sie NodeJs
Ubuntu@Ubuntu: ~ $ sudo apt-Get Installieren Sie NPM
Projekt einrichten
Wir werden das "Express" -Regel vom Knoten verwenden.JS, um unsere Bewerbung aufzubauen. Erstellen Sie ein Verzeichnis namens "GraphQL" und initiieren Sie das Projekt.
Ubuntu@Ubuntu: ~ $ mkdir graphql
Ubuntu@Ubuntu: ~ $ CD Graphql/
Ubuntu@Ubuntu: ~ $ npm init -y
MongoDB -Setup
In unserem GraphQL -Projekt werden wir MongoDB als unsere Datenbank verwenden. MongoDB ist eine Schemaless -Datenbank und speichert Daten in Form von Schlüsselpaaren. Um MongoDB zu installieren, befolgen Sie die angegebenen Schritte.
Importieren Sie den öffentlichen GPG -Schlüssel für MongoDB.
Ubuntu@Ubuntu: ~ $ wget -qo - https: // www.MongoDb.org/static/pgp/server-4.4.ASC | sudo apt-key add -
Erstellen Sie die Listendatei für MongoDB.
Ubuntu@Ubuntu: ~ $ echo "Deb [Arch = AMD64, ARM64] https: // repo.MongoDb.org/apt/ubuntu bionic/mongoDB-org/4.4 Multiverse "| sudo tee/etc/apt/Quellen.Liste.d/mongoDb-org-4.4.Liste
Aktualisieren Sie lokale Repositories.
Ubuntu@Ubuntu: ~ $ sudo apt -Get -Update -y
Installieren Sie das MongoDB -Paket.
Ubuntu@Ubuntu: ~ $ sudo apt-Get install -y mongoDb-org
Beginnen Sie und aktivieren Sie Mongod.Service.
Ubuntu@Ubuntu: ~ $ sudo systemctl starten mongod.Service
Ubuntu@Ubuntu: ~ $ sudo systemCtl aktivieren Mongod.Service
Installieren von NPM -Modulen
Für unsere GraphQL -Anwendung müssen wir einige NPM -Pakete installieren. Wir werden CORs, Express, Body-Parser, Mongoose usw. installieren.
Ubuntu@Ubuntu: ~ $ CD Graphql/
Ubuntu@Ubuntu: ~ $ npm install CORS Express Body-Parser Mongoose-Save
Um eine GraphQL-API zu erstellen, müssen wir ein zusätzliches NPM-Paket namens 'Apollo-Server-Express installieren.'Dieses NPM -Paket wird verwendet, um den GraphQL -Server mit allen Knoten auszuführen.JS HTTP -Frameworks wie 'Express.''
Ubuntu@ubuntu: ~ $ npm install apollo-server-express--Save
Definieren von MongoDB -Schema
Jetzt haben wir unsere Umgebung für unsere GraphQL -Anwendung im Knoten eingerichtet.JS, und es ist Zeit, ein Schema für unsere Anwendung zu definieren. Erstellen Sie eine Datei 'Modelle/Student.JS 'im Projekt Root Directory.
// Definieren des SchülerschemasIm oben definierten Schema muss jeder Schüler einen Namen, eine Klasse und einen Major haben.
Erstellen von GraphQL -API
Nach dem Erstellen des Schülerschemas werden wir nun GraphQL API erstellen. Erstellen Sie ein 'Schema.JS ', um GraphQL -Parameter zu schreiben. Es gibt zwei Parameter, "Typen" und "Resolver", die in der GraphQL -API verwendet werden. In 'Typen' werden wir unser Schema, die Abfragen (e), angeben.G., Get -Anfragen machen) und Mutationen (e.G., Aktualisierung oder Löschen von Anforderungen) auf das angegebene Schema. Wir werden die verschiedenen in 'Typen definierten Methoden schreiben, um die Abfragen und Mutationen mit der Datenbank in' Resolver zu verknüpfen.''
// Schema und Modul importierenErstellen von GraphQL -API -Server
Jetzt sind wir fast fertig damit, die GraphQL -Anwendung zu erstellen. Der einzige Schritt übrig ist das Erstellen des Servers. Erstellen Sie eine Datei namens 'App.JS ', um Serverparameter zu konfigurieren.
// erforderliche Pakete importierenTesten der GraphQL -API
Wir haben unseren GraphQL -Server auf Port 8000 und es ist Zeit, die GraphQL -API zu testen. Öffnen Sie die GraphQL -Webseite auf dem Browser, indem Sie die folgende URL besuchen.
http: // localhost: 8000/graphql
Und es wird die folgende Webseite öffnen.
Fügen Sie den Schüler mithilfe der GraphQL -API in die Datenbank hinzu.
Fügen Sie in ähnlicher Weise weitere Schüler hinzu und erhalten Sie nach dem Hinzufügen des Schülers alle Schüler mithilfe von GraphQL -API.
Beachten Sie die ID eines der Schüler und bringen Sie den spezifischen Schüler mit seiner ID ein.
Abschluss
Wenn Sie Daten aus der Datenbank mit der Standard -REST -API abrufen. Mit GraphQL können wir genau die erforderlichen Daten abrufen, die die GraphQL -API schneller machen. In diesem Demo -Projekt haben wir nur ein einziges Schema, daher haben wir GraphQL -API für dieses einzelne Schema erstellt. Außerdem haben wir drei bis vier Methoden für das Schema definiert. Sie können mehr als eine Abfrage oder Mutationen gemäß Ihrer Anwendung erstellen.