Ograniczanie szybkości to strategia, której można użyć do kontrolowania ruchu w sieci. Ogranicza liczbę żądań, które użytkownik może złożyć w określonym czasie.
Istnieją różne algorytmy ograniczania szybkości, każdy z własnymi kompromisami. Jedną z prostych i popularnych metod jest śledzenie adresów IP żądań i sprawdzanie, ile czasu upływa między żądaniami. System może następnie odrzucić żądanie, jeśli jego adres IP przekroczy liczbę żądań dozwolonych przez limit.
MAKEUSEOF WIDEO DNIA
Takie podejście do ograniczania szybkości można łatwo zbudować w aplikacji NodeJS-Express, wykonując zaledwie kilka kroków.
Krok 1: Konfigurowanie środowiska programistycznego
Najpierw musisz utworzyć i zainicjować aplikację Express.
Zacznij od utworzenia katalogu projektu, uruchamiając:
mkdir express-app
Następnie wejdź do tego katalogu, uruchamiając:
cd express-app
Następnie zainicjuj npm, menedżer pakietów węzłów, i stworzyć pakiet.json plik w swojej aplikacji, uruchamiając:
npm init -y
The -Y flaga utworzy twoją pakiet.json plik ze wszystkimi ustawieniami domyślnymi.
jak uzyskać dostęp do trybu portretowego na iPhonie 7
Następnie musisz zainstalować kilka zależności. Zależności wymagane w tym samouczku to:
- ExpressJS: ExpressJS to framework NodeJS który zapewnia solidny zestaw funkcji dla aplikacji internetowych i mobilnych. Upraszcza proces budowania aplikacji backendowych za pomocą NodeJS.
- Ekspresowy limit szybkości : Express rate limit to oprogramowanie pośredniczące ograniczające szybkość dla ExpressJS. Ogranicza powtarzające się żądania do publicznych interfejsów API i/lub punktów końcowych, takich jak resetowanie haseł, logowanie użytkowników itp.
Zainstaluj wymagane zależności, uruchamiając:
npm install express express-rate-limit
Krok 2: Tworzenie aplikacji ekspresowej
Musisz utworzyć podstawowy serwer Express, który nasłuchuje żądań wysyłanych do Twojej aplikacji.
Najpierw utwórz index.js plik w katalogu głównym projektu. Będzie to plik wejściowy dla Twojej aplikacji.
Następnie dodaj następujący kod do swojego index.js plik:
// 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}`);
});
Ten kod importuje wyrazić i tworzy aplikację Express, wywołując express() i przechowując jej zwracaną wartość w aplikacja zmienny. Następnie nasłuchuje ruchu na porcie 3000 dzwoniąc do słuchać metoda na aplikacja obiekt.
Krok 3: Tworzenie programów obsługi tras
Następnie utwórz kilka programów obsługi tras, na których możesz zaimplementować rozwiązanie ograniczające szybkość.
jak rozpocząć passę w snapchacie
Najpierw utwórz folder, trasy w katalogu głównym projektu, uruchamiając:
mkdir routes
Utwórz plik, trasy.js , w folderze tras i dodaj następujący kod:
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;
Ten kod importuje wyrazić , nazywa Router metoda włączona wyrazić i przechowuje wartość w zmiennej, router . The Router Metoda pozwala tworzyć modułowe, montowalne programy obsługi tras. Możesz utworzyć programy obsługi tras dla DOSTAWAĆ poprosić o ' / ', a POCZTA poprosić o ' /dodaj-demo ”i a POŁOŻYĆ poprosić o ' /aktualizacja-demo ”. Na koniec wyeksportuj router zmienny.
Następnie zaimportuj router zmienna w twoim index.js plik:
// index.js
const routes = require("./routes/routes");
Następnie użyj go jako oprogramowania pośredniczącego w pliku index.js:
// index.js
app.use(routes);