نشاط الإخطارات على الويب في Azure Data Factory

ينطبق على:Azure Data Factory Azure Synapse Analytics

تلميح

جرب Data Factory في Microsoft Fabric، وهو حل تحليلي متكامل للمؤسسات. يغطي Microsoft Fabric كل شيء بدءا من حركة البيانات إلى علم البيانات والتحليلات في الوقت الحقيقي والمعلومات المهنية وإعداد التقارير. تعرف على كيفية بدء إصدار تجريبي جديد مجانا!

يمكن لنشاط الإخطارات على الويب التحكم في تنفيذ التدفقات من خلال التعليمات البرمجية المخصصة. يمكن للتعليمات البرمجية باستخدام نشاط الإخطارات على الويب استدعاء نقطة نهاية وتمريرها عبر عنوان URL لرد الاتصال. تنتظر عملية تشغيل التدفق استدعاء رد الاتصال قبل أن ينتقل إلى النشاط التالي.

هام

يتيح نشاط الإخطارات على الويب الآن عرض حالة الخطأ والرسائل المخصصة مرة أخرى إلى النشاط والتدفقات. عيًن ReportStatusOnCallBack إلى "صواب"، وقم بتضمين رمز الحالة والخطأ في حمولة رد الاتصال. لمزيد من المعلومات، راجع قسم الملاحظات الإضافية.

إنشاء نشاط Webhook باستخدام واجهة المستخدم

لاستخدام نشاط Webhook في مسار، أكمل الخطوات التالية:

  1. ابحث عن Webhook في جزء أنشطة البنية الأساسية لبرنامج ربط العمليات التجارية، واسحب نشاط Webhook إلى لوحة البنية الأساسية لبرنامج ربط العمليات التجارية.

  2. حدد نشاط الإخطار على الويب الجديد على اللوحة إذا لم يكن محددا بالفعل، وعلامة التبويب الإعدادات الخاصة به، لتحرير تفاصيله.

    Shows the UI for a Webhook activity.

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

  4. استخدم الإخراج من النشاط كإدخال إلى أي نشاط آخر، وقم بالإشارة إلى الإخراج في أي مكان يتم فيه دعم المحتوى الديناميكي في نشاط الوجهة.

بناء الجملة


{
    "name": "MyWebHookActivity",
    "type": "WebHook",
    "typeProperties": {
        "method": "POST",
        "url": "<URLEndpoint>",
        "headers": {
            "Content-Type": "application/json"
        },
        "body": {
            "key": "value"
        },
        "timeout": "00:10:00",
        "reportStatusOnCallBack": false,
        "authentication": {
            "type": "ClientCertificate",
            "pfx": "****",
            "password": "****"
        }
    }
}

خصائص النوع

الخاصية ‏‏الوصف القيم المسموح بها المطلوب
الاسم اسم نشاط الإخطارات على الويب. السلسلة‬ ‏‏نعم‬
النوع يتعين تعيينه إلى "الإخطارات على الويب". السلسلة‬ ‏‏نعم‬
أسلوب أسلوب REST API لنقطة النهاية الهدف. السلسلة. النوع المعتمد هو "POST". ‏‏نعم‬
url نقطة النهاية الهدف والمسار. سلسلة أو تعبير يستخدم resultType من النوع "سلسلة". ‏‏نعم‬
العناوين العناوين التي يتم إرسالها إلى الطلب. وفيما يلي مثال يحدد اللغة والكتابة في الطلب: "headers" : { "Accept-Language": "en-us", "Content-Type": "application/json" }. سلسلة أو تعبير يستخدم resultType من النوع "سلسلة". نعم. يُطلب الرأس Content-Type مثل "headers":{ "Content-Type":"application/json"}.
النص الأساسي يمثل الحمولة التي يتم إرسالها إلى نقطة النهاية. JSON صالح أو تعبير به قيمة resultType لـ JSON. راجع مخطط حمولة الطلب في قسم مخطط حمولة الطلب. ‏‏نعم‬
المصادقة أسلوب المصادقة المستخدم لاستدعاء نقطة النهاية. الأنواع المعتمدة هي "أساسي" و "ClientCertificate". لمزيد من المعلومات، راجع المصادقة. استثني هذه الخاصية في حالة عدم طلب المصادقة. سلسلة أو تعبير يستخدم resultType من النوع "سلسلة". لا
المهلة من الوقت ينتظر النشاط استدعاء رد الاتصال المحدد بواسطة callBackUri. القيمة الافتراضية هي 10 دقائق ("00:10:00"). تحتوي القيم على تنسيق TimeSpan يوم.ساعات:دقائق:ثواني. السلسلة‬ لا
حالة التقرير على رد الاتصال يتيح للمستخدم الإبلاغ عن الحالة الفاشلة لنشاط الإخطارات على الويب. Boolean لا

المصادقة

يدعم نشاط الإخطارات على الويب أنواع المصادقة التالية.

بلا

إذا لم تكن المصادقة مطلوبة، فلا تقم بتضمين خاصية المصادقة.

أساسي

حدد اسم المستخدم وكلمة المرور لاستخدامها مع المصادقة الأساسية.

"authentication":{
   "type":"Basic",
   "username":"****",
   "password":"****"
}

شهادة العميل

حدد محتويات ترميز Base64 من ملف PFX وكلمة مرور.

"authentication":{
   "type":"ClientCertificate",
   "pfx":"****",
   "password":"****"
}

الهوية المُدارة

استخدم الهوية المدارة لـ Data Factory أو مساحة عمل Synapse لتحديد مورد URI حيث يُطلب الرمز المميز للوصول. استخدم https://management.azure.com/ لاستدعاء واجهة برمجة تطبيقات Azure Resource Management. لمزيد من المعلومات حول كيفية عمل الهويات المُدارة، راجع نظرة عامة عن الهويات المدارة لموارد Azure.

"authentication": {
    "type": "MSI",
    "resource": "https://management.azure.com/"
}

إشعار

إذا تم تكوين الخدمة مع مستودع Git، يجب تخزين بيانات الاعتماد الخاصة بك في Azure Key Vault لاستخدام المصادقة الأساسية أو مصادقة شهادة العميل. لا تُخزن الخدمة كلمات المرور في Git.

ملاحظات إضافية

تقوم الخدمة بتمرير الخاصية الإضافية callBackUri في النص المُرسَل إلى نقطة نهاية عنوان URL. تتوقع الخدمة أن يتم استدعاء URI هذا قبل مرور قيمة المهلة المحددة. إذا لم يتم استدعاء URI، يفشل النشاط مقدمًا الحالة "TimedOut".

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

تنتهي مهلة العميل لكل استدعاء REST API إذا لم تستجب نقطة النهاية خلال دقيقة واحدة. وهذا السلوك هو أفضل ممارسات HTTP القياسية. ولإصلاح هذه المشكلة، قم بتطبيق نمط 202. وتُرجع نقطة النهاية في الحالة الحالية الكود 202 (مقبول) واستطلاعات العميل.

لا علاقة لمهلة الدقيقة الواحدة على الطلب بمهلة النشاط. يُستخدم هذا الأخير لانتظار رد الاتصال المحدد بواسطة callbackUri.

يجب أن يكون النص الذي تم تمريره مرة أخرى إلى URI لرد الاتصال JSON صالحًا. وقم بتعيين العوان Content-Type إلى application/json.

عند استخدام خاصية Report status on callback، يجب إضافة التعلية البرمجية التالية إلى النص الأساسي عند إجراء رد الاتصال:

{
    "Output": {
        // output object is used in activity output
        "testProp": "testPropValue"
    },
    "Error": {
        // Optional, set it when you want to fail the activity
        "ErrorCode": "testErrorCode",
        "Message": "error message to show in activity error"
    },
    "StatusCode": "403" // when status code is >=400, activity is marked as failed
}

راجع أنشطة سير عمل التحكم المعتمدة التالية: