Ratenbegrenzung ist eine Strategie, mit der Sie den Datenverkehr in einem Netzwerk steuern können. Es begrenzt die Anzahl der Anfragen, die ein Benutzer innerhalb eines bestimmten Zeitrahmens stellen kann.
Es existieren verschiedene Ratenbegrenzungsalgorithmen, jeder mit seinen eigenen Kompromissen. Eine einfache und beliebte Methode besteht darin, die IP-Adressen von Anfragen zu verfolgen und zu überprüfen, wie viel Zeit zwischen Anfragen vergeht. Das System kann dann eine Anfrage ablehnen, wenn seine IP-Adresse die zulässige Anzahl von Anfragen überschreitet.
MAKEUSEOF VIDEO DES TAGES
Dieser Ansatz zur Ratenbegrenzung lässt sich mit nur wenigen Schritten einfach in eine NodeJS-Express-App integrieren.
2-Spieler-Spiele auf verschiedenen Computern
Schritt 1: Einrichten einer Entwicklungsumgebung
Zuerst müssen Sie eine Express-Anwendung erstellen und initialisieren.
Erstellen Sie zunächst ein Projektverzeichnis, indem Sie Folgendes ausführen:
mkdir express-app
Geben Sie dann dieses Verzeichnis ein, indem Sie Folgendes ausführen:
cd express-app
Als nächstes initialisieren npm, der Node-Paketmanager, und erstellen Sie eine Paket.json Datei in Ihrer Anwendung, indem Sie Folgendes ausführen:
npm init -y
Das -Y Flagge wird Ihre erstellen Paket.json Datei mit allen Standardeinstellungen.
Als nächstes müssen Sie einige Abhängigkeiten installieren. Die für dieses Tutorial erforderlichen Abhängigkeiten sind:
Was muss ich auf meinem PC aktualisieren?
- ExpressJS: ExpressJS ist ein NodeJS-Framework das einen robusten Satz von Funktionen für Web- und mobile Anwendungen bietet. Es vereinfacht den Prozess der Erstellung von Backend-Anwendungen mit NodeJS.
- Express-Ratenbegrenzung : Express Rate Limit ist eine ratenbegrenzende Middleware für ExpressJS. Es begrenzt wiederholte Anfragen an öffentliche APIs und/oder Endpunkte, wie z. B. Zurücksetzen von Passwörtern, Benutzeranmeldungen usw.
Installieren Sie die erforderlichen Abhängigkeiten, indem Sie Folgendes ausführen:
npm install express express-rate-limit
Schritt 2: Erstellen einer Express-Anwendung
Sie müssen einen einfachen Express-Server erstellen, der auf Anfragen lauscht, die an Ihre Anwendung gesendet werden.
Erstellen Sie zunächst eine index.js Datei im Stammverzeichnis Ihres Projekts. Dies ist die Eingabedatei für Ihre Anwendung.
Fügen Sie als Nächstes den folgenden Code zu Ihrer hinzu index.js Datei:
// index.js
const express = require("express");
const app = express();
const port = process.env.PORT || 3000
app.listen(port, () => {
console.log(`App running on port ${port}`);
});
Dieser Code wird importiert ausdrücken und erstellt eine Express-Anwendung durch Aufrufen von express() und Speichern des Rückgabewerts in der App Variable. Es lauscht dann auf Verkehr am Port 3000 durch Anruf beim Hören Methode auf der App Objekt.
Schritt 3: Routen-Handler erstellen
Erstellen Sie als Nächstes einige Routenhandler, auf denen Sie die Ratenbegrenzungslösung implementieren können.
Erstellen Sie zunächst einen Ordner „routes“ im Stammverzeichnis Ihres Projekts, indem Sie Folgendes ausführen:
mkdir routes
Erstellen Sie eine Datei, routen.js , in Ihrem Routenordner und fügen Sie den folgenden Code hinzu:
const express = require("express");
const router = express.Router();
router.get("/", (req, res) => {
res.send({ message: "Hello, this is a GET request" });
});
router.post("/add-demo", (req, res) => {
res.status(201).send({ message: "Resource created successfully" });
});
router.put("/update-demo", (req, res) => {
res.status(201).send({ message: "Resource updated sucessfully" });
});
module.exports = router;
Dieser Code wird importiert ausdrücken , ruft die Router Methode an ausdrücken , und speichert den Wert in einer Variablen, Router . Das Router -Methode können Sie modulare, einhängbare Routenhandler erstellen. Sie können Routenhandler für a erstellen ERHALTEN Anfrage zu ' / ', a POST Anfrage zu ' /add-demo ', und ein STELLEN Anfrage zu ' /update-demo “. Exportieren Sie abschließend die Router Variable.
wie man Zuschauer auf Twitch anzieht
Als nächstes importieren Sie die Router Variable in Ihrem index.js Datei:
// index.js
const routes = require("./routes/routes");
Verwenden Sie es dann als Middleware in Ihrer index.js-Datei:
// index.js
app.use(routes);