Einführung
In diesem Projekt lernst du, wie du eine einfache Nachrichten-API mit Node.js erstellen kannst. Du wirst lernen, wie du einen Server erstellen, verschiedene Routen verarbeiten und Nachrichten-Daten in einem bestimmten Format zurückgeben kannst.
👀 Vorschau
curl http://localhost:8080/news
## Ausgabe:
## [{"channelId":"5572a108b3cdc86cf39001cd","name":"National Focus"},{"channelId":"5572a108b3cdc86cf39001ce","name":"International Focus"}]
curl http://localhost:8080
## Ausgabe:
## 404
🎯 Aufgaben
In diesem Projekt wirst du lernen:
- Wie du einen Server mit Node.js erstellen kannst
- Wie du die
/news-Route verarbeitest und Nachrichten-Daten zurückgibst - Wie du andere Routen verarbeitest und eine 404-Antwort zurückgibst
🏆 Errungenschaften
Nach Abschluss dieses Projekts wirst du in der Lage sein:
- Die Grundlagen des Erstellens eines Servers mit Node.js zu verstehen
- Eine einfache API zu implementieren, um Nachrichten-Daten zurückzugeben
- Verschiedene Routen zu verarbeiten und passende Antworten zu liefern
Erstelle einen Server
Um loszulegen, öffnen Sie den Editor. Sie sollten eine Datei im Editor sehen - "app.js".
In diesem Schritt lernen Sie, wie Sie einen Server mit Node.js erstellen. Folgen Sie den Schritten unten, um diesen Schritt abzuschließen:
Öffnen Sie die Datei
app.jsin Ihrer Entwicklungsumgebung.Importieren Sie das Modul
http, das die Funktionalität zum Erstellen eines Servers bietet:const http = require("http");Erstellen Sie einen neuen Server mit der Methode
createServer():const serve = http.createServer();Fügen Sie einem Ereignislistener für den Server hinzu, um eingehende Anfragen zu verarbeiten:
serve.on("request", (req, res) => { // TODO: Fügen Sie Code hinzu, um die Anfrage zu verarbeiten });Starten Sie den Server und hören Sie auf Port 8080:
serve.listen(8080, () => { console.log("Der Dienst wurde gestartet!"); });
Verarbeite die /news-Route
In diesem Schritt lernst du, wie du die /news-Route verarbeitest und Nachrichten-Daten zurückgibst. Folgen Sie den Schritten unten, um diesen Schritt abzuschließen:
Innerhalb des Anfrage-Ereignislisteners setze den Antwortheader, um das
utf8-Format zu verwenden:res.setHeader("Content-type", "text/html;charset=utf8");Überprüfe die angeforderte URL:
if (req.url == "/news") { // Verarbeite die /news-Route } else { // Verarbeite andere Routen }Bereite die Nachrichten-Daten im erforderlichen Format vor:
const data = [ { channelId: "5572a108b3cdc86cf39001cd", name: "National Focus" }, { channelId: "5572a108b3cdc86cf39001ce", name: "International Focus" } ];Sende die Nachrichten-Daten als Antwort:
res.end(JSON.stringify(data));
Verarbeite andere Routen
In diesem Schritt lernst du, wie du andere Routen verarbeitest, die nicht /news sind.
Innerhalb des Anfrage-Ereignislisteners füge einen
else-Block hinzu, um andere Routen zu verarbeiten:if (req.url == "/news") { // Verarbeite die /news-Route //... } else { // Verarbeite andere Routen res.end("404"); }Im
else-Block sende eine404-Antwort, um anzuzeigen, dass die angeforderte Route nicht gefunden wurde.
Jetzt sollte deine app.js-Datei so aussehen:
const http = require("http");
const serve = http.createServer();
serve.on("request", (req, res) => {
// TODO: Füge Code hinzu, um die Anfrage zu verarbeiten
res.setHeader("Content-type", "text/html;charset=utf8");
console.log(req.url);
if (req.url == "/news") {
const data = [
{
channelId: "5572a108b3cdc86cf39001cd",
name: "National Focus"
},
{
channelId: "5572a108b3cdc86cf39001ce",
name: "International Focus"
}
];
res.end(JSON.stringify(data));
} else {
res.end("404");
}
});
serve.listen(8080, () => {
console.log("Der Dienst wurde gestartet!");
});
Teste den Server
Führen Sie den Server mit dem folgenden Befehl im Terminal aus:
node app.jsÖffnen Sie erneut ein neues Terminal und überprüfen Sie, ob das Terminal korrekt ist, mit dem folgenden Befehl:
curl http://localhost:8080/news
## Ausgabe:
## [{"channelId":"5572a108b3cdc86cf39001cd","name":"National Focus"},{"channelId":"5572a108b3cdc86cf39001ce","name":"International Focus"}]
curl http://localhost:8080
## Ausgabe:
## 404
Herzlichen Glückwunsch! Sie haben erfolgreich eine Nachrichten-API mit Node.js erstellt.
Zusammenfassung
Herzlichen Glückwunsch! Sie haben dieses Projekt abgeschlossen. Sie können in LabEx weitere Übungen absolvieren, um Ihre Fähigkeiten zu verbessern.



