به دنبال یادگیری بیشتر - اطلاعات بیشتر در مورد من در: hesij.ir
میانجی (Middleware) در Express JS
قبل از هر چیز ، Middleware چیست ؟
به طور ساده به عنوان یک راه ورودی در نظر بگیرید که Request ها اول از همه باید از اینجا عبور کنند و سپس به Handler برسند.
در Express برای اینکه بتوانیم یک middleware بنویسیم از متد زیر استفاده میکنیم :
app.use(path,callbak)
این متد یک پارامتر اختیاری (path) و یک پارامتر اجباری (callback) میگیرد.
فرض کنید قصد داریم تا Date و Method و آدرس درخواست داده شده به سرور رو در جایی ثبت کنیم، برای این کار یک middleware قبل از تمام Route ها تعریف میکنیم :
//instantiate the Express.js app
app.use(function(req, res, next) {
console.log('%s %s — %s', (new Date).toString(), req.method, req.url);
return next();
});
//implement server routes
از طرف دیگر فرض کنید میخواهیم که این اتفاق فقط برای مسیرهایی که با الگوی admin/ شروع میشوند بیافتد، در این حالت از پارامتر اختیاری path استفاده میکنیم :
//instantiate the Express.js app
app.use('/admin', function(req, res, next) {
console.log('%s %s — %s', (new Date).toString(), req.method, req.url);
return next();
});
....
app.get('admin/login', (req,res) => {
// TODO
});
حال هر درخواستی که از مسیر /admin گذر کند اول این لاگ چاپ میشود.
میدلویر ها کاربردهای زیادی دارند به طور مثال میتوان از آنها برای محدود کردن سطوح دسترسی استفاده کرد.
مطلبی دیگر از این انتشارات
مقدمه ای بر اکسپرس جی اس
مطلبی دیگر از این انتشارات
آموزش ساخت ربات فرمان صوتی بر پایه هوش مصنوعی با Nodejs
مطلبی دیگر از این انتشارات
دستورات مختلف در node.js