| Nächste Überarbeitung | Vorhergehende Überarbeitung |
| de:modul:m307:learningunits:lu03:02 [2026/05/03 12:24] – angelegt vdemir | de:modul:m307:learningunits:lu03:02 [2026/05/03 12:28] (aktuell) – vdemir |
|---|
| **Stellen Sie sich diesen Prozess wie einen Briefwechsel vor:** | **Stellen Sie sich diesen Prozess wie einen Briefwechsel vor:** |
| |
| * **Der Request (Anfrage):** Sie (der Client) senden einen Brief an den Server. Auf dem Umschlag steht, ob Sie nur Informationen erhalten möchten (GET) oder ob Sie ein Paket zur Verarbeitung mitschicken (POST). | * **Der Request (Anfrage):** Sie (der Client) senden einen Brief an den Server. Auf dem Umschlag steht, ob Sie nur Informationen erhalten möchten (**GET**) oder ob Sie ein Paket zur Verarbeitung mitschicken (**POST**). |
| * **Die Verarbeitung:** Der Node.js-Server nimmt Ihren Brief entgegen, liest die Absicht aus und entscheidet, welche Logik ausgeführt werden muss. | * **Die Verarbeitung:** Der Node.js-Server nimmt Ihren Brief entgegen, liest die Absicht aus und entscheidet, welche Logik ausgeführt werden muss. |
| * **Die Response (Antwort):** Der Server sendet Ihnen eine Rückmeldung (Antwort), die das Ergebnis Ihrer Anfrage sowie einen Statuscode enthält. | * **Die Response (Antwort):** Der Server sendet Ihnen eine Rückmeldung (Antwort), die das Ergebnis Ihrer Anfrage sowie einen Statuscode enthält. |
| | |
| ===== 2. Theorie: Die HTTP-Methoden im Detail ===== | ===== 2. Theorie: Die HTTP-Methoden im Detail ===== |
| In der Webentwicklung nutzen wir das HTTP-Protokoll. Die Wahl der Methode definiert die Semantik (den Sinn) Ihrer Anfrage. | In der Webentwicklung nutzen wir das **HTTP-Protokoll**. Die Wahl der Methode definiert die Semantik (den Sinn) Ihrer Anfrage. |
| |
| **GET: Informationen abrufen** | ==== GET: Informationen abrufen ==== |
| Die GET-Methode dient dazu, Daten vom Server anzufragen, ohne diese zu verändern. | Die GET-Methode dient dazu, Daten vom Server anzufragen, ohne diese zu verändern. |
| |
| * **Datenübertragung:** Parameter werden offen an die URL angehängt (z. B. suche?artikel=laptop). | * **Datenübertragung:** Parameter werden offen an die URL angehängt (z. B. <wrap hi>suche?artikel=laptop</wrap>). |
| * **Sichtbarkeit:** Da die Daten in der Adresszeile stehen, sind sie für jedermann sichtbar und werden im Browserverlauf gespeichert. | * **Sichtbarkeit:** Da die Daten in der Adresszeile stehen, sind sie für jedermann sichtbar und werden im Browserverlauf gespeichert. |
| * **Einsatzgebiet:** Anzeigen von Webseiten, Suchanfragen, Abrufen von Profilbildern. | * **Einsatzgebiet:** Anzeigen von Webseiten, Suchanfragen, Abrufen von Profilbildern. |
| |
| **POST: Daten übermitteln** | ==== POST: Daten übermitteln ==== |
| Die POST-Methode wird verwendet, um Daten zur Verarbeitung an den Server zu senden. | Die POST-Methode wird verwendet, um Daten zur Verarbeitung an den Server zu senden. |
| |
| * **Datenübertragung:** Die Informationen befinden sich im sogenannten Body (Körper) der Anfrage. Sie sind nicht in der URL sichtbar. | * **Datenübertragung:** Die Informationen befinden sich im sogenannten **Body** (Körper) der Anfrage. Sie sind nicht in der URL sichtbar. |
| * **Sicherheit:** POST ist sicherer für sensible Daten wie Passwörter, da diese nicht in Logs oder im Verlauf auftauchen. | * **Sicherheit:** POST ist sicherer für sensible Daten wie Passwörter, da diese nicht in Logs oder im Verlauf auftauchen. |
| * **Einsatzgebiet:** Benutzerregistrierungen, Login-Formulare, Hochladen von Dateien. | * **Einsatzgebiet:** Benutzerregistrierungen, Login-Formulare, Hochladen von Dateien. |
| * **Die V8-Engine:** Sie sorgt für die schnelle Ausführung Ihres Codes. | * **Die V8-Engine:** Sie sorgt für die schnelle Ausführung Ihres Codes. |
| * **Der Event-Loop:** Diese Komponente ermöglicht es dem Server, viele Anfragen gleichzeitig zu bearbeiten, ohne bei langsamen Aufgaben (wie Datenbankabfragen) zu blockieren. | * **Der Event-Loop:** Diese Komponente ermöglicht es dem Server, viele Anfragen gleichzeitig zu bearbeiten, ohne bei langsamen Aufgaben (wie Datenbankabfragen) zu blockieren. |
| * **Routing:** Dies ist der Wegweiser Ihres Servers. Er entscheidet: "Wenn eine GET-Anfrage an <code>/kontakt</code> kommt, sende die Kontaktseite zurück." | * **Routing:** Dies ist der Wegweiser Ihres Servers. Er entscheidet: "Wenn eine GET-Anfrage an <wrap hi>/kontakt</wrap> kommt, sende die Kontaktseite zurück." |
| * **Middleware:** Dies sind Hilfsfunktionen, die die Anfrage vor der eigentlichen Logik untersuchen (z. B. um zu prüfen, ob die mitgeschickten Daten im JSON-Format vorliegen). | * **Middleware:** Dies sind Hilfsfunktionen, die die Anfrage vor der eigentlichen Logik untersuchen (z. B. um zu prüfen, ob die mitgeschickten Daten im JSON-Format vorliegen). |
| |
| ---- | ---- |
| [[https://creativecommons.org/licenses/by-nc-sa/4.0/|{{https://i.creativecommons.org/l/by-nc-sa/4.0/88x31.png}}]] Volkan Demir | [[https://creativecommons.org/licenses/by-nc-sa/4.0/|{{https://i.creativecommons.org/l/by-nc-sa/4.0/88x31.png}}]] Volkan Demir |