Sådan bedømmer du Limit Express-applikationer

Sådan bedømmer du Limit Express-applikationer

Takstbegrænsning er en strategi, du kan bruge til at kontrollere trafikken på et netværk. Det begrænser antallet af anmodninger, som en bruger kan foretage inden for en bestemt tidsramme.





Der findes forskellige hastighedsbegrænsende algoritmer, hver med sine egne afvejninger. En enkel og populær metode er at spore anmodningers IP-adresser og kontrollere, hvor lang tid der går mellem anmodninger. Systemet kan derefter afvise en anmodning, hvis dets IP-adresse overstiger antallet af anmodninger, som grænsen tillader.





MAKEUSE AF DAGENS VIDEO

Denne tilgang til hastighedsbegrænsning er nem at bygge i en NodeJS-Express-app med blot et par trin.





Trin 1: Opsætning af et udviklingsmiljø

Først skal du oprette og initialisere en Express-applikation.

Start med at oprette en projektmappe ved at køre:



hvorfor er min diskplads på 100
mkdir express-app 

Indtast derefter den mappe ved at køre:

cd express-app 

Dernæst initialiser npm, node pakke manager, og skabe en package.json fil i din ansøgning ved at køre:





npm init -y 

Det -Y flag vil skabe din package.json fil med alle standardindstillingerne.

Dernæst skal du installere nogle afhængigheder. De afhængigheder, der kræves til denne øvelse er:





  • ExpressJS: ExpressJS er en NodeJS-ramme der giver et robust sæt funktioner til web- og mobilapplikationer. Det forenkler processen med at bygge backend-applikationer med NodeJS.
  • Express Rate Limit : Express rate limit er en hastighedsbegrænsende middleware til ExpressJS. Det begrænser gentagne anmodninger til offentlige API'er og/eller endepunkter, såsom nulstilling af adgangskode, brugerlogin osv.

Installer de nødvendige afhængigheder ved at køre:

npm install express express-rate-limit

Trin 2: Oprettelse af en Express-applikation

Du skal oprette en grundlæggende Express-server, der lytter til anmodninger, der sendes til din applikation.

Først skal du oprette en index.js fil i dit projekts rodmappe. Dette vil være indtastningsfilen for din ansøgning.

Tilføj derefter følgende kode til din index.js fil:

// 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}`);
});

Denne kode importerer udtrykke og opretter en Express-applikation ved at kalde express() og gemmer dens returværdi i app variabel. Derefter lytter den efter trafik på havnen 3000 ved at ringe til Lyt metode på app objekt.

Trin 3: Oprettelse af rutebehandlere

Dernæst skal du oprette nogle rutebehandlere, som du kan implementere den hastighedsbegrænsende løsning på.

Først skal du oprette en mappe, ruter, i dit projekts rodmappe ved at køre:

mkdir routes 

Opret en fil, routes.js , inde i din rutemappe, og tilføj følgende kode:

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;

Denne kode importerer udtrykke , kalder Router metode på udtrykke , og gemmer værdien i en variabel, router . Det Router metode giver dig mulighed for at oprette modulære, monterbare rutehandlere. Du kan oprette rutebehandlere for en anmode om at ' / ', en STOLPE anmode om at ' /add-demo ', og en SÆTTE anmode om at ' /update-demo ”. Til sidst eksporterer du router variabel.

mac vil ikke oprette forbindelse til internettet

Dernæst importerer du router variabel i din index.js fil:

// index.js 
const routes = require("./routes/routes");

Brug den derefter som en middleware i din index.js-fil:

// index.js 
app.use(routes);