ایکسپریس ایپلی کیشنز کو محدود کرنے کا طریقہ

ایکسپریس ایپلی کیشنز کو محدود کرنے کا طریقہ

شرح محدود کرنا ایک حکمت عملی ہے جسے آپ نیٹ ورک پر ٹریفک کو کنٹرول کرنے کے لیے استعمال کر سکتے ہیں۔ یہ درخواستوں کی تعداد کو محدود کرتا ہے جو صارف ایک مخصوص ٹائم فریم کے اندر کر سکتا ہے۔





مختلف شرح کو محدود کرنے والے الگورتھم موجود ہیں، جن میں سے ہر ایک کی اپنی تجارت ہے۔ ایک آسان اور مقبول طریقہ یہ ہے کہ درخواستوں کے آئی پی ایڈریسز کو ٹریک کریں اور چیک کریں کہ درخواستوں کے درمیان کتنا وقت گزرتا ہے۔ سسٹم پھر کسی درخواست کو مسترد کر سکتا ہے اگر اس کا IP ایڈریس حد سے اجازت دینے والی درخواستوں کی تعداد سے زیادہ ہو۔





دن کی ویڈیو کا میک یوز

شرح کو محدود کرنے کا یہ نقطہ نظر NodeJS-Express ایپ میں صرف چند قدموں کے ساتھ بنانا آسان ہے۔





مرحلہ 1: ترقیاتی ماحول قائم کرنا

سب سے پہلے، آپ کو ایکسپریس ایپلیکیشن بنانے اور شروع کرنے کی ضرورت ہوگی۔

چلا کر پروجیکٹ ڈائرکٹری بنا کر شروع کریں:



mkdir express-app 

پھر اس ڈائرکٹری کو چلا کر درج کریں:

cd express-app 

اگلا، شروع کریں npm، نوڈ پیکیج مینیجر، اور تخلیق کریں package.json اپنی درخواست میں فائل چلا کر:





npm init -y 

دی -Y پرچم آپ کی تخلیق کرے گا package.json تمام ڈیفالٹ ترتیبات کے ساتھ فائل۔

اگلا، آپ کو کچھ انحصار انسٹال کرنے کی ضرورت ہوگی۔ اس ٹیوٹوریل کے لیے درکار انحصار یہ ہیں:





  • ExpressJS: ایکسپریس جے ایس ایک نوڈ جے ایس فریم ورک ہے۔ جو ویب اور موبائل ایپلیکیشنز کے لیے خصوصیات کا ایک مضبوط سیٹ فراہم کرتا ہے۔ یہ نوڈ جے ایس کے ساتھ بیک اینڈ ایپلی کیشنز بنانے کے عمل کو آسان بناتا ہے۔
  • ایکسپریس ریٹ کی حد : ایکسپریس ریٹ کی حد ExpressJS کے لیے شرح کو محدود کرنے والا مڈل ویئر ہے۔ یہ بار بار کی جانے والی درخواستوں کو عوامی APIs اور/یا اینڈ پوائنٹس تک محدود کرتا ہے، جیسے کہ پاس ورڈ ری سیٹ، صارف لاگ ان وغیرہ۔

چلا کر مطلوبہ انحصار انسٹال کریں:

npm install express express-rate-limit

مرحلہ 2: ایکسپریس ایپلیکیشن بنانا

آپ کو ایک بنیادی ایکسپریس سرور بنانے کی ضرورت ہوگی جو آپ کی درخواست پر کی جانے والی درخواستوں کو سنتا ہے۔

سب سے پہلے، ایک بنائیں index.js اپنے پروجیکٹ کی روٹ ڈائرکٹری میں فائل۔ یہ آپ کی درخواست کی انٹری فائل ہوگی۔

اگلا، درج ذیل کوڈ کو اپنے میں شامل کریں۔ index.js فائل:

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

یہ کوڈ درآمد کرتا ہے۔ اظہار اور ایکسپریس() کو کال کرکے اور اس کی واپسی کی قیمت کو میں اسٹور کرکے ایک ایکسپریس ایپلی کیشن تخلیق کرتا ہے۔ ایپ متغیر اس کے بعد یہ بندرگاہ پر ٹریفک کے لیے سنتا ہے۔ 3000 کو کال کرکے سنو پر طریقہ ایپ چیز.

مرحلہ 3: روٹ ہینڈلرز بنانا

اس کے بعد، کچھ روٹ ہینڈلرز بنائیں جن پر آپ شرح کو محدود کرنے والے حل کو نافذ کر سکتے ہیں۔

سب سے پہلے، اپنے پروجیکٹ کی روٹ ڈائرکٹری میں ایک فولڈر، روٹس، چلا کر بنائیں:

mkdir routes 

ایک فائل بنائیں، routes.js ، اپنے روٹس فولڈر کے اندر اور درج ذیل کوڈ شامل کریں:

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;

یہ کوڈ درآمد کرتا ہے۔ اظہار ، کال کرتا ہے۔ راؤٹر طریقہ پر اظہار ، اور قدر کو متغیر میں محفوظ کرتا ہے، راؤٹر . دی راؤٹر طریقہ آپ کو ماڈیولر، ماؤنٹ ایبل روٹ ہینڈلرز بنانے دیتا ہے۔ آپ a کے لیے روٹ ہینڈلرز بنا سکتے ہیں۔ حاصل کریں۔ درخواست کریں ' / ”، اے پوسٹ درخواست کریں ' /add-demo '، اور ایک ڈالو درخواست کریں ' /اپ ڈیٹ ڈیمو ' آخر میں، برآمد کریں راؤٹر متغیر

اگلا، درآمد کریں راؤٹر آپ میں متغیر index.js فائل:

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

پھر، اسے اپنی index.js فائل میں مڈل ویئر کے طور پر استعمال کریں:

اینڈروئیڈ پر اسکرین شاٹ کیسے لیں۔
// index.js 
app.use(routes);