Com valorar les aplicacions de límit Express

Com valorar les aplicacions de límit Express

La limitació de velocitat és una estratègia que podeu utilitzar per controlar el trànsit a una xarxa. Limita el nombre de sol·licituds que un usuari pot fer en un període de temps específic.





Existeixen diversos algorismes de limitació de velocitat, cadascun amb les seves pròpies compensacions. Un mètode senzill i popular és fer un seguiment de les adreces IP de les sol·licituds i comprovar quant de temps passa entre sol·licituds. Aleshores, el sistema pot denegar una sol·licitud si la seva adreça IP supera el nombre de sol·licituds que permet el límit.





MAKEUSEO VÍDEO DEL DIA

Aquest enfocament de la limitació de tarifes és fàcil de crear en una aplicació NodeJS-Express, amb només uns quants passos.





Pas 1: Configuració d'un entorn de desenvolupament

Primer, haureu de crear i inicialitzar una aplicació Express.

Comenceu creant un directori de projecte executant:



format de la unitat USB per a la instal·lació de Windows 10
mkdir express-app 

A continuació, introduïu aquest directori executant:

cd express-app 

A continuació, inicialitzeu npm, el gestor de paquets de nodes, i crear un package.json fitxer a la vostra aplicació executant:





npm init -y 

El -i bandera crearà el teu package.json fitxer amb tota la configuració predeterminada.

A continuació, haureu d'instal·lar algunes dependències. Les dependències necessàries per a aquest tutorial són:





  • ExpressJS: ExpressJS és un framework de NodeJS que proporciona un conjunt robust de funcions per a aplicacions web i mòbils. Simplifica el procés de creació d'aplicacions de fons amb NodeJS.
  • Límit de tarifa exprés : Express rate limit és un programari intermedi que limita la velocitat per a ExpressJS. Limita les sol·licituds repetides a API públiques i/o punts finals, com ara restabliment de contrasenyes, inicis de sessió d'usuaris, etc.

Instal·leu les dependències necessàries executant:

npm install express express-rate-limit

Pas 2: Creació d'una aplicació Express

Haureu de crear un servidor Express bàsic que escolti les sol·licituds que es fan a la vostra aplicació.

Primer, creeu un index.js fitxer al directori arrel del vostre projecte. Aquest serà el fitxer d'entrada de la vostra sol·licitud.

A continuació, afegiu el codi següent al vostre index.js dossier:

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

Aquest codi importa expressar i crea una aplicació Express cridant express() i emmagatzemant el seu valor de retorn al fitxer aplicació variable. A continuació, escolta el trànsit al port 3000 trucant al escolta mètode sobre el aplicació objecte.

Pas 3: creació de gestors de rutes

A continuació, creeu alguns gestors de rutes on podeu implementar la solució de limitació de velocitat.

Primer, creeu una carpeta, rutes, al directori arrel del vostre projecte executant:

mkdir routes 

Creeu un fitxer, rutes.js , dins de la carpeta de rutes i afegiu el codi següent:

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;

Aquest codi importa expressar , crida el Encaminador mètode activat expressar , i emmagatzema el valor en una variable, encaminador . El Encaminador El mètode us permet crear gestors de rutes modulars i muntables. Podeu crear gestors de ruta per a a ACONSEGUIR demanar a ' / ”, a PUBLICACIÓ demanar a ' /add-demo ”, i a POSAR demanar a ' /actualització-demo ”. Finalment, exporteu el encaminador variable.

A continuació, importeu el encaminador variable al teu index.js dossier:

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

A continuació, utilitzeu-lo com a programari intermediari al vostre fitxer index.js:

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