قوالب الويب كـ API

مكتمل

يحتوي جدول Page Template على إعداد يحدّد ما إذا كان يجب أن تستخدم الصفحة قوالب رأس موقع الويب وتذييله الشائعة عند استخدام قالب الويب.

لقطة شاشة لجدول قالب الصفحة، تعرض الإعداد لاستخدام رأس وتذييل موقع الويب.

عندما لا يتم استخدام رأس الصفحة وتذييله، يفترض النموذج مسؤولية إنشاء مخرجات الصفحة بالكامل. إذا كنت تقوم بعرض HTML، فإن هذا الإخراج يتضمن نوع المستند، وعنصر <html> الجذر، وكل شيء بينهما. قد يكون هذا النهج مفيدًا فِي سيناريوهات مختلفة، مثل عندما:

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

  • ينشئ قالب الويب محتوى غير HTML، أو يُرجع البيانات بتنسيق XML أو JSON أو أي تنسيقات أخرى.

على سبيل المثال، بإمكانك إنشاء قالب ويب بتنسيق JSON يعمل على إرجاع قائمة بالحسابات أو أي بيانات أخرى يمكن للمستخدم الحالي الوصول إليها.

{% entityview logical_name:'account', name:'Active Accounts' %}
[
{% for acc in entityview.records -%}
    {
        "name": "{{ acc.name }}",
        "phone": "{{ acc.telephone1 }}"
    }{% unless forloop.last %},{% endunless %}
{% endfor -%}
]
{% endentityview %}

ملاحظة

في هذا المثال، بدلاً من علامة entityview، يمكنك استخدام استعلام FetchXML داخل العلامة fetchxml. يضيف استخدام FetchXML المضمن بعض المرونة إلى الاستعلام. يمكن إنشاء الاستعلام ديناميكياً من خلال استخدام معلمات القالب أو حتى كائن request الذي يحتوي على معلمات سلسلة الاستعلام لطلب صفحة HTTP حالية.

يمكنك استخدام هذا القالب بدون رأس وتذييل، مع تعيين نوع MIME إلى application/json. سيكون الإخراج مشابهاً للمثال التالي:

[
  {
      "name": "A Datum Corporation",
      "phone": "425-555-0182"
  },
  {
      "name": "A Datum Fabrication",
      "phone": "303-555-0134"
  },
  {
      "name": "A Datum Integration",
      "phone": "512-555-0163"
  },
  {
      "name": "A. Datum",
      "phone": "+86-23-4444-0100"
  },
  {
      "name": "Adventure Works",
      "phone": "+27-264-1234567"
  }
]

تلميح

ضع فِي اعتبارك استخدام ‏‫واجهة API لويب المداخل لاسترداد البيانات حيثما أمكن ذلك. واجهة API لويب المدخل سريعة وتتجنب معالجة القوالب من جانب الخادم تماماً. ومع ذلك، إذا كان تحويل البيانات مطلوبًا، فستحتاج إلى إكماله باستخدام JavaScript من جانب العميل. من ناحية أخرى، يمكن لقوالب Liquid تحويل البيانات واستخدامها بالكامل على جانب الخادم. لمزيد من المعلومات، راجع مداخل قراءة العمليات باستخدام واجهة API (API).

الصفحة التي تستخدم قالب الويب هذا لن يراها الأشخاص الذين يستخدمون مستعرضًا؛ بدلاً من ذلك، يتم استدعاؤه من كود JavaScript، ما يحدّد بشكل فعال نقطة نهاية API للحل الخاص بك. ستتمكن JavaScript بصفحة أخرى من تحميل هذه البيانات وعرضها على النحو المطلوب.

يكون التفويض فِي مكانه، ولا يختلف الوصول إلى بيانات Microsoft Dataverse باستخدام هذا القالب "بدون رأس" عما إذا تم عرض الإخراج بتنسيق HTML. تتطلب صفحة الاستدعاء عادةً مصادقة المستخدم قبل استدعاء نقطة النهاية.