شرح استخدام مكتبة express-validator في NodeJs

كيفية استخدام express-validator للتحقق من صحة البيانات في Express.js
تعلم التحقق من البيانات باستخدام express-validator في Node.js خطوة بخطوة

كيفية إدارة أخطاء التحقق من البيانات باستخدام express-validator في Node.js

هل تواجه صعوبة في كتابة أكواد التحقق من صحة بيانات الإدخال في تطبيق Express.js؟ لا داعي للقلق! مع مكتبة express-validator، ستتمكن من التحقق من صحة بيانات الإدخال بسهولة وكفاءة، مما يوفر عليك الوقت ويُقلل من الأخطاء ، ولن تحتاج الى شركة تصميم تطبيقات الجوال

حتى تتمكن من عمل واجهات برمجة التطبيقات فقط يمكنك تنفيذ واجهة api قوية من خلال الدروس التي نقدمها لكم على موقع جي كودرس

اذا كنت تبحث عن backend android او حتى برمجه مواقع يمكنك القيام بذلك من خلال عمل باك اند لمنصتك سواء باستخدام backend online او حتى vs code او اي برنامج اخر يساعدك في بناء الواجهه الخلفيه لمشروعك وفي هذا المقال نتناول معكم شرح حول express-validator بالتفصل .


ما هي مكتبة express-validator؟

هي مكتبة مفتوحة المصدر تُستخدم للتحقق من صحة بيانات الإدخال في تطبيقات Node.js التي تعتمد على إطار عمل Express.js. تُسهل هذه المكتبة عملية كتابة أكواد التحقق من صحة البيانات وتنظيمها، مما يوفر الوقت ويُقلل من الأخطاء.


مميزات مكتبة express-validator:

  • سهولة الاستخدام: توفر المكتبة مجموعة واسعة من الوظائف المُدمجة للتحقق من صحة أنواع البيانات المختلفة، مثل: النصوص، والأرقام، والتاريخ والوقت، والبريد الإلكتروني، وغيرها.
  • قابلية التخصيص: يمكنك بسهولة كتابة وظائف التحقق من صحة البيانات الخاصة بك لتلبية احتياجاتك المُحددة.
  • دعم متعدد اللغات: تدعم المكتبة العديد من اللغات، بما في ذلك العربية.
  • مجتمع نشط: يوجد مجتمع نشط من المطورين الذين يُقدمون الدعم والمساعدة.


تثبيت المكتبة

npm install express-validator


استيراد المكتبة داخل مشروع nodejs

const { body, validationResult } = require("express-validator");


مثال حول استخدام express-validator مع api

router.post('/signup',
body('title')
.notEmpty()
.withMessage("تاكد ان النص غير فارغ")
.trim() // لحذف اي مسافات
.isLength({ min: 5 })
.withMessage("اسم المستخدم يجب أن يكون على الأقل 5 أحرف")
.isAlphanumeric()
.withMessage("اسم المستخدم يجب أن يتكون من حروف وأرقام فقط"),

body('body')
.notEmpty()
.withMessage("تاكد ان النص غير فارغ")
.trim() // لحذف اي مسافات
.isLength({ min: 5 })
.withMessage("اسم المستخدم يجب أن يكون على الأقل 5 أحرف")
.isAlphanumeric()
.withMessage("اسم المستخدم يجب أن يتكون من حروف وأرقام فقط"),

async (req,res)=>{
    let username = req.body.username;
    let name = req.body.name;
    let email = req.body.email;
    let password = req.body.password;

    const error = validationResult(req);

    if (!error.isEmpty()) {
        return res.json(errors.array());
    }
// your code .
    });

شرح استخدام express-validator مع nodejs


بكل بساطة في الكود السابق بداخل ال route اول مكان يتم وضع بداخله اسم ال end point والثاني يمكنك وضع الشروط التي تحتاجها من المكتبة وهنا تاكدنا ان النص غير فارغ وتم حذف اي مسافه في النهايه وبعض الشروط الاخرى التي تقدمها لنا المكتبة واخر مكان في route لتنفيذ ال end point وهنا تاكدنا اولا من حدوث مشاكل في المكتبة من الشروط السابقه واذا حدث بالفعل يتم عرض المشكلة للمستخدم واذا لم يحدث سوف يتخطى هذا الجزء وينتق الى your code لتنفيذ الكود الخاص بك .

معالجة الأخطاء:

إذا لم يتم اجتياز قواعد التحقق من صحة البيانات، ستُرجع المكتبة مجموعة من الأخطاء.
يمكنك استخدام هذه الأخطاء لعرض رسائل خطأ للمستخدم أو إعادة توجيهه إلى صفحة أخرى.

وظائف التحقق من صحة البيانات المُدمجة:

:توفر مكتبة express-validator مجموعة واسعة من وظائف التحقق من صحة البيانات المُدمجة، مثل
  • body(fieldName): تُستخدم للتحقق من صحة البيانات المُرسلة في جسم الطلب (body).
  • param(paramName): تُستخدم للتحقق من صحة البيانات المُرسلة في عنوان URL (params).
  • query(paramName): تُستخدم للتحقق من صحة البيانات المُرسلة في سلسلة استعلام URL (query).
  • header(headerName): تُستخدم للتحقق من صحة البيانات المُرسلة في رأس الطلب (headers).

باستخدام مكتبة express-validator، يمكنك التأكد من أن بيانات الإدخال في تطبيقك صحيحة وكاملة، مما يُساعد على تحسين أمان التطبيق وفعاليته.
تعليقات