Heim > Web-Frontend > js-Tutorial > Hauptteil

MERN-Stack-Anwendung| Teil 2

Patricia Arquette
Freigeben: 2024-10-23 21:26:02
Original
279 Leute haben es durchsucht

MERN Stack Application| Part 2

Lassen Sie uns im Kontext einer E-Commerce-Anwendung, die mit dem MERN-Stack erstellt wurde, durchgehen, wie der Anfrage-Antwort-Zyklus funktioniert, wenn ein Benutzer versucht, Produktdetails abzurufen.

  1. Benutzerinteraktion im Frontend (Reagieren)

Ein Benutzer öffnet die E-Commerce-Website und möchte die Details eines Produkts anzeigen. Sie klicken möglicherweise auf eine Produktliste oder suchen nach einem bestimmten Artikel.

React, das für die Front-End-Benutzeroberfläche verantwortlich ist, erkennt diese Interaktion und löst eine Anfrage zum Abrufen von Produktdaten aus.

React sendet eine HTTP-Anfrage (mit Axios, Fetch oder ähnlichem) an das Backend und zielt auf einen Endpunkt wie /api/products/:id ab, wobei :id die eindeutige Kennung des Produkts ist.

  1. HTTP-Anfrage an Backend gesendet (Node.js/Express)

Der mit Node.js und Express erstellte Backend-Server wartet auf eingehende HTTP-Anfragen auf definierten Routen.

Wenn die Anfrage an /api/products/:id eintrifft, erkennt Express die Route und leitet die Anfrage an den entsprechenden Routenhandler weiter.

  1. Middleware-Verarbeitung (optional)

Bevor die Anfrage verarbeitet wird, durchläuft sie möglicherweise Middleware-Funktionen.

Zum Beispiel könnte Middleware die Anfragedetails protokollieren, prüfen, ob der Benutzer authentifiziert ist, oder die Anfrageparameter validieren.

Wenn alles in Ordnung ist, wird die Anfrage an den Routenhandler weitergeleitet. Andernfalls könnte die Middleware eine Fehlerantwort zurückgeben (z. B. „Unautorisierter Zugriff“).

  1. Interaktion mit Datenbank (MongoDB)

Sobald die Anfrage den entsprechenden Routenhandler erreicht, verwendet Express einen MongoDB-Treiber wie Mongoose, um die Datenbank abzufragen.

Die Abfrage könnte so aussehen: Product.findById(productId), wobei die Produkt-ID aus der URL extrahiert wird.

MongoDB ruft die Produktdetails, einschließlich Name, Preis, Beschreibung, Bilder und Verfügbarkeit, aus der Datenbank ab.

  1. Vorbereiten und Senden der Antwort

Nach dem Abrufen der Produktdetails von MongoDB verarbeitet Express die Daten.

Die Daten werden in ein JSON-Objekt formatiert, das alle notwendigen Informationen über das Produkt enthält.

Express sendet diese JSON-Antwort zurück an das React-Frontend.

  1. React empfängt und aktualisiert die Benutzeroberfläche

React erhält die Produktdetails in der Antwort.

Es verwendet die Daten, um die Benutzeroberfläche zu aktualisieren und den Namen, den Preis, die Bilder, die Beschreibung und andere relevante Informationen des Produkts anzuzeigen.

Wenn das Produkt nicht gefunden wird oder ein Fehler auftritt (z. B. „Produkt nicht verfügbar“), zeigt React dem Benutzer eine entsprechende Meldung an.

Beispiel für einen Anfrage-Antwort-Ablauf

  1. Benutzeraktion (Reagieren): Der Benutzer klickt auf der Startseite auf ein Produkt mit dem Namen „Kabellose Kopfhörer“.

  2. HTTP-Anfrage: React sendet eine GET-Anfrage an /api/products/12345, wobei 12345 die Produkt-ID für „Drahtlose Kopfhörer“ ist.

  3. Express-Routenabwicklung: Express empfängt die Anfrage und prüft, ob es eine Route für /api/products/:id gibt. Anschließend wird die Anfrage an den entsprechenden Handler weitergeleitet.

  4. Datenbankabfrage (MongoDB): Express verwendet Mongoose, um MongoDB abzufragen, und führt Product.findById("12345") aus, um Details zu den „Wireless Headphones“ abzurufen.

  5. Antwortbildung: Wenn das Produkt gefunden wird, sendet Express eine JSON-Antwort mit Details wie:

{
„id“: „12345“,
„name“: „Kabellose Kopfhörer“,
„Preis“: 59,99,
„description“: „Hochwertige kabellose Kopfhörer mit Geräuschunterdrückung.“,
„Bilder“: [„Bild1.jpg“, „Bild2.jpg“],
„Lager“: 20
}

  1. React-Updates-Benutzeroberfläche: React empfängt diese Daten und zeigt sie an, um dem Benutzer alles über die „Wireless Headphones“ zu zeigen. Wenn ein Fehler auftritt (z. B. „Produkt nicht gefunden“), zeigt React eine entsprechende Meldung an.

In diesem Fluss veranschaulichte Schlüsselkonzepte

Asynchrone Anfragen: React verarbeitet Anfragen asynchron, sodass der Benutzer mit der App interagieren kann, während er auf Antworten wartet.

Konsistenter Datenfluss: Alle Komponenten (React, Express, MongoDB) kommunizieren über JSON und sorgen so für einen reibungslosen Datenfluss über den Stack.

Skalierbarkeit: Jede Komponente kann unabhängig skaliert werden, was die Bewältigung von wachsendem Traffic oder einer großen Anzahl von Produkten erleichtert.

Dieser Anfrage-Antwort-Zyklus zeigt effektiv, wie eine auf dem MERN-Stack basierende E-Commerce-Site Produktinformationen abruft und dem Benutzer ein nahtloses Erlebnis bietet.

Das obige ist der detaillierte Inhalt vonMERN-Stack-Anwendung| Teil 2. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:dev.to
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!