خدمة ويب Apex: لبنات البناء لسَحَرة الويب
مقدمة:
في هذه المقالة سأتعمق في بناء خدمات ويب Apex مخصصة في Salesforce. هذه الخدمات ضرورية عندما تحتاج إلى عملية خارجية تتعامل مع Salesforce لاسترجاع البيانات أو كتابتها، ولا تفي REST API القياسية بالغرض. سنمرّ على خمسة أمثلة تتدرج في التعقيد، من الاستعلامات القياسية إلى التحديثات.

نظرة عامة على خدمات الويب المخصصة
سنستكشف خمسة أمثلة لخدمات ويب مخصصة:
GET باستخدام قائمة SObject قياسية: استرجاع البيانات باستخدام قائمة SObject قياسية.
غلاف مع استجابة JSON: تحسين طلب GET بتغليفه باستجابة JSON.
إضافة المعاملات: إدخال معاملات في طلب GET لاسترجاع بيانات أكثر تحديدًا.
استخدام POST للإدراج: تنفيذ طلب POST لإدراج البيانات.
إعادة رسالة الخطأ: معالجة رسائل الخطأ وإعادتها بالشكل المناسب.
تنفيذ خدمات الويب المخصصة
المثال 1: GET باستخدام قائمة SObject قياسية
في هذا المثال نعرّف مورد REST بعنوان URI مخصص، ونحدد فعل HTTP (GET). يجب أن يُعلَن عن الصنف (class) بأنه global، ونعيد قائمة من الحسابات القياسية باستعلام بسيط.

المثال 2: غلاف مع استجابة JSON
لكي نتحكم في البيانات التي تُعاد إلى العميل، نستخدم كائن استجابة. فبدلًا من إعادة قائمة من SObjects، نعيد قائمة من كائنات استجابة مخصصة، تقدم تمثيلًا خفيفًا للعميل يقتصر على المعرّف (ID) والاسم.

المثال 3: إضافة المعاملات
المعاملات ضرورية عندما تحتاج إلى بيانات عميل بعينه. فبقراءة RestContext.params يمكنك استرجاع معرّف العميل واستخدامه في عبارة WHERE في SOQL لتصفية البيانات.

المثال 4: استخدام POST للإدراج
عندما تحتاج إلى كتابة البيانات، تُستخدم طريقة POST. في هذا المثال ننشئ كائن استجابة وكائن طلب. يستقبل كائن الطلب عميلًا له اسم، ونستخدم JSON serializer لتحويل الطلب إلى صنف محدد. وبعد إنشاء حساب جديد وإدراجه، تُعاد حالة نجاح.

المثال 5: إعادة رسالة الخطأ
هذا المثال شبيه بالمثال 4، لكنه يتضمن معالجة الأخطاء. فعند حدوث استثناء، يُلتقط الخطأ ويُضاف إلى قائمة، وتُضبط رمز الحالة على 500 (أو أي رقم تفضله).

الخلاصة
من خلال هذه الأمثلة عرضنا لبنات البناء الأساسية لإنشاء خدمات ويب Apex مخصصة في Salesforce. بدأنا بطلب GET بسيط، ثم زدنا التعقيد تدريجيًا بإدخال المعاملات وطلبات POST ومعالجة الأخطاء.
تابعنا
شكرًا لك على القراءة، وأتطلع إلى مشاركة مزيد من المغامرات المليئة بالمعرفة معك قريبًا! تابعنا هنا على www.SteveTechArc.com وعلى قناة @SteveTechArc (opens in a new tab) على YouTube. اشترك وعمّق فهمك لـ Salesforce وكيف يمكنك دمجها مع أنظمة أخرى.
نساعد في تغيير العالم بمشاركة معلومات التكامل مع زملائنا المعماريين ومع من هم في رحلتهم نحو أن يصبحوا معماريين!
نص مكتوب بمساعدة الذكاء الاصطناعي
STA 1.8