تجاوز إلى المحتوى الرئيسي
Didit تجمع 7.5 مليون دولار لبناء البنية التحتية للهوية والاحتيال
Didit
العودة إلى المدونة
المدونة · 7 مارس 2026

بناء وسيط Express.js للتحقق الديناميكي من الهوية (AR)

تعرف على كيفية بناء وسيط Express.js لتنفيذ قرارات التحقق الديناميكي من الهوية باستخدام واجهة برمجة تطبيقات Didit القوية. يتيح هذا النهج تقييمًا مرنًا للمخاطر في الوقت الفعلي وتجارب مستخدم مخصصة، مما يعزز الأمان والكفاءة.

بواسطة Diditتحديث
expressjs-middleware-for-dynamic-identity-verification.png

التحقق الديناميكي باستخدام Express.js قم بتطبيق وسيط Express.js لتنسيق قرارات التحقق من الهوية في الوقت الفعلي، وتكييف سير العمل بناءً على سياق المستخدم أو مخاطر المعاملات باستخدام واجهة برمجة تطبيقات Didit.

الاستفادة من بنية Didit المعيارية تتيح منصة Didit المفتوحة والمعيارية للمطورين دمج فحوصات تحقق محددة بسهولة مثل التحقق من الهوية، والتحقق من الحيوية، وفحص مكافحة غسيل الأموال (AML) في الوسيط الخاص بهم.

أتمتة الثقة بحلول الذكاء الاصطناعي الأصلية استخدم إمكانيات Didit الأصلية للذكاء الاصطناعي لاتخاذ قرارات ذكية، مما يقلل من المراجعة اليدوية ويبسط عمليات الامتثال لنظام أكثر كفاءة وأمانًا.

تكامل سلس وخدمة KYC الأساسية المجانية تقدم Didit نهجًا يركز على المطورين من خلال واجهات برمجة تطبيقات نظيفة، وبيئة اختبار فورية، وخدمة KYC الأساسية المجانية، مما يسهل بناء ونشر منطق تحقق متطور داخل تطبيقات Express.js الخاصة بك.

الحاجة إلى التحقق الديناميكي من الهوية

في المشهد الرقمي اليوم، لم تعد عمليات التحقق الثابتة من الهوية كافية. تحتاج الشركات إلى المرونة لتكييف متطلبات "اعرف عميلك" (KYC) و"مكافحة غسيل الأموال" (AML) بناءً على عوامل مختلفة، مثل موقع المستخدم، وقيمة المعاملة، وملف المخاطر، أو حتى الخدمة المحددة التي يتم الوصول إليها. على سبيل المثال، قد تتطلب معاملة منخفضة القيمة مجرد التحقق الأساسي من البريد الإلكتروني، بينما تتطلب عملية مالية عالية القيمة مسحًا كاملاً لوثيقة الهوية، وفحصًا حيويًا، وفحصًا لمكافحة غسيل الأموال. يوفر بناء وسيط Express.js طريقة أنيقة وفعالة لدمج هذه القدرات الديناميكية لاتخاذ القرار مباشرة في دورة الطلب والاستجابة لتطبيقك.

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

تصميم وسيط التحقق الخاص بك في Express.js

تتمتع دالة وسيط Express.js بالوصول إلى كائنات الطلب والاستجابة، ودالة الوسيط التالية في دورة الطلب والاستجابة للتطبيق. وهذا يجعلها مكانًا مثاليًا لاعتراض الطلبات، وإجراء فحوصات الهوية، وتعديل التدفق بناءً على النتائج. فيما يلي مخطط مفاهيمي لكيفية عمل هذا الوسيط:

  1. اعتراض الطلب: يعترض الوسيط طلبًا واردًا إلى مسار محمي (على سبيل المثال، مسار لبدء معاملة عالية القيمة).
  2. استخراج السياق: يستخرج معلومات ذات صلة من الطلب، مثل معرف المستخدم، وعنوان IP، والإجراء المطلوب، أو مبلغ المعاملة.
  3. تقييم المخاطر/السياسة: بناءً على هذا السياق، يحدد الوسيط المستوى المطلوب من التحقق. قد يتضمن ذلك التحقق من ملفات تعريف المستخدمين الداخلية، أو درجات المخاطر في الوقت الفعلي، أو قواعد العمل المحددة مسبقًا.
  4. بدء جلسة Didit: إذا كانت هناك حاجة إلى التحقق، يقوم الوسيط بإجراء استدعاء لواجهة برمجة تطبيقات Didit لإنشاء جلسة تحقق جديدة. تعد أداة didit_create_session من Didit مثالية لذلك، مما يسمح لك بتحديد workflow_id الذي يتوافق مع خطوات التحقق المطلوبة (على سبيل المثال، التحقق من الهوية، والتحقق السلبي والنشط من الحيوية، وفحص مكافحة غسيل الأموال).
  5. إعادة التوجيه أو التضمين: تعيد Didit عنوان URL فريدًا للتحقق. يمكن للوسيط بعد ذلك إعادة توجيه المستخدم إلى عنوان URL هذا، أو، لتجربة أكثر تكاملاً، تضمين تدفق التحقق من Didit داخل إطار iframe على موقعك.
  6. التعامل مع ردود الويب (Webhook Callbacks): ترسل منصة Didit تحديثات في الوقت الفعلي عبر ردود الويب مع تقدم المستخدم خلال التحقق وعند اتخاذ القرار النهائي. يحتاج الواجهة الخلفية الخاصة بك إلى نقطة نهاية منفصلة لاستقبال ومعالجة ردود الويب هذه، وتحديث حالة التحقق للمستخدم في قاعدة بياناتك.
  7. السماح أو رفض الوصول: بمجرد أن يؤكد رد الويب نجاح التحقق، يمكن منح المستخدم حق الوصول إلى المورد المحمي. إذا فشل التحقق، يتم رفض الوصول.

يسمح هذا التنسيق الديناميكي بتحديد مسارات تحقق معقدة دون ترميز كل قرار في منطق تطبيقك. تعني بنية Didit المعيارية أنه يمكنك بسهولة استبدال أو إضافة خطوات تحقق جديدة (على سبيل المثال، إثبات العنوان أو تقدير العمر) إلى سير عملك في Business Console دون تغيير رمز تطبيقك.

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

دعنا نأخذ مثالاً مبسطًا لوسيط Express.js الذي يبدأ جلسة تحقق من Didit. أولاً، تأكد من أن لديك مفتاح API من Didit. ستستخدم هذا لمصادقة طلباتك.


const express = require('express');
const axios = require('axios');
const app = express();

// استبدل بمفتاح API الفعلي لـ Didit ومعرف سير العمل
const DIDIT_API_KEY = 'YOUR_DIDIT_API_KEY';
const HIGH_RISK_WORKFLOW_ID = 'YOUR_HIGH_RISK_WORKFLOW_ID'; // على سبيل المثال، الهوية + الحيوية + مكافحة غسيل الأموال
const LOW_RISK_WORKFLOW_ID = 'YOUR_LOW_RISK_WORKFLOW_ID';   // على سبيل المثال، البريد الإلكتروني + الهاتف

// دالة وهمية لتحديد المخاطر بناءً على بيانات المستخدم
const assessRisk = (userId, transactionAmount) => {
    // في تطبيق حقيقي، سيتضمن هذا منطقًا أكثر تعقيدًا
    if (transactionAmount > 1000 || userId === 'high_risk_user_id') {
        return 'HIGH';
    }
    return 'LOW';
};

const dynamicVerificationMiddleware = async (req, res, next) => {
    const userId = req.user.id; // بافتراض أن معرف المستخدم متاح من الجلسة/المصادقة
    const transactionAmount = req.body.amount; // بافتراض أن المبلغ في نص الطلب

    const riskLevel = assessRisk(userId, transactionAmount);
    let workflowIdToUse;

    if (riskLevel === 'HIGH') {
        console.log(`User ${userId} identified as HIGH risk. Initiating high-risk verification.`);
        workflowIdToUse = HIGH_RISK_WORKFLOW_ID;
    } else {
        console.log(`User ${userId} identified as LOW risk. Initiating low-risk verification.`);
        workflowIdToUse = LOW_RISK_WORKFLOW_ID;
    }

    try {
        const response = await axios.post(
            'https://verification.didit.me/v3/session/',
            {
                workflow_id: workflowIdToUse,
                vendor_data: userId, // ربط الجلسة بمعرف المستخدم الداخلي الخاص بك
                callback: 'https://your-app.com/didit/webhook-handler' // نقطة نهاية ردود الويب الخاصة بك
            },
            {
                headers: {
                    'x-api-key': DIDIT_API_KEY,
                    'Content-Type': 'application/json'
                }
            }
        );

        const verificationUrl = response.data.url;
        console.log(`Verification URL for user ${userId}: ${verificationUrl}`);

        // إعادة توجيه المستخدم إلى صفحة التحقق المستضافة من Didit
        return res.redirect(verificationUrl);

        // بدلاً من ذلك، أرسل عنوان URL مرة أخرى إلى العميل للتكامل الأمامي (على سبيل المثال، iframe)
        // return res.status(402).json({ message: 'Verification required', verificationUrl });

    } catch (error) {
        console.error('Error creating Didit session:', error.response ? error.response.data : error.message);
        return res.status(500).send('Verification service unavailable.');
    }
};

// مثال على مسار محمي
app.post('/api/perform-transaction', dynamicVerificationMiddleware, (req, res) => {
    // سيتم تنفيذ هذا الرمز فقط إذا سمح dynamicVerificationMiddleware بذلك (على سبيل المثال، بعد أن يؤكد رد الويب التحقق)
    res.send('Transaction successful!');
});

app.listen(3000, () => console.log('Server running on port 3000'));

يوضح هذا المثال كيفية تحديد سير عمل Didit ديناميكيًا بناءً على تقييم المخاطر وبدء جلسة. تذكر أن القرار الفعلي بالمضي قدمًا في المعاملة يجب أن يتم بعد أن يؤكد رد الويب من Didit نتيجة التحقق.

كيف تساعد Didit

تتمتع Didit بموقع فريد لتمكين المطورين من بناء حلول ديناميكية للتحقق من الهوية. توفر منصتنا الأصلية للذكاء الاصطناعي والموجهة للمطورين اللبنات الأساسية التي تحتاجها:

  • هوية معيارية: تتيح بنية Didit المفتوحة والمعيارية لك تجميع سير عمل التحقق مع فحوصات محددة مثل التحقق من الهوية (OCR، MRZ، الرموز الشريطية)، والتحقق السلبي والنشط من الحيوية، ومطابقة الوجه 1:1، وفحص ومراقبة مكافحة غسيل الأموال، وإثبات العنوان، وتقدير العمر. يمكنك تجميع هذه في سير عمل مخصص في Business Console الخاص بنا، لكل منها workflow_id فريد يمكن لوسيطك استدعائه ديناميكيًا.
  • سير العمل المنسق: حدد مسارات تحقق معقدة بمنطق شرطي وخطوات متعددة، وكلها تديرها Didit، مما يقلل العبء على تطبيقك.
  • تجربة تركز على المطورين: مع واجهات برمجة تطبيقات نظيفة، وبيئة اختبار فورية، ووثائق شاملة، يكون دمج Didit في تطبيق Express.js الخاص بك أمرًا مباشرًا. يمكنك إنشاء روابط تحقق عبر استدعاء واجهة برمجة تطبيقات بسيط، كما هو موضح أعلاه.
  • الأتمتة بدلاً من المراجعة اليدوية: تعمل إمكانيات Didit الأصلية للذكاء الاصطناعي على أتمتة اتخاذ القرار لنسبة عالية من عمليات التحقق، مما يقلل بشكل كبير من الحاجة إلى المراجعة اليدوية ويسرع عملية الإعداد.
  • خدمة KYC الأساسية المجانية: ابدأ بميزات التحقق الأساسية من الهوية دون تكاليف أولية، مما يتيح لك اختبار وتوسيع نطاق استراتيجيات التحقق الديناميكية الخاصة بك بفعالية.

سواء كنت بحاجة إلى التحقق من العمر لتطبيق ما، أو ضمان الامتثال للخدمات المالية، أو منع الاحتيال باستخدام القياسات الحيوية المتقدمة، فإن مجموعة منتجات Didit الشاملة وخيارات التكامل المرنة تجعلها الشريك المثالي لبناء تحقق ديناميكي وقوي من الهوية في تطبيقات Express.js الخاصة بك.

هل أنت مستعد للبدء؟

هل أنت مستعد لرؤية Didit في العمل؟ احصل على عرض توضيحي مجاني اليوم.

ابدأ في التحقق من الهويات مجانًا باستخدام الطبقة المجانية من Didit.

بنية تحتية للهوية والاحتيال.

واجهة برمجية واحدة لـ KYC و KYB ومراقبة المعاملات وفحص المحافظ. ادمجها في 5 دقائق.

اطلب من الذكاء الاصطناعي تلخيص هذه الصفحة
وسيط Express.js للتحقق الديناميكي من الهوية.