تحديد مشاكل نشر سياسة DecodeJWT وحلّها

يتم الآن عرض مستندات Apigee Edge.
انتقِل إلى مستندات Apigee X.
المعلومات

InvalidEmptyElement

رسالة الخطأ

تعذَّر نشر الخادم الوكيل لواجهة برمجة التطبيقات من خلال واجهة مستخدم Edge أو واجهة برمجة تطبيقات إدارة Edge وظهور رسالة الخطأ التالية:

Error Saving Revision
Invalid empty element : policy(policy_name) element(Source)

مثال على رسالة الخطأ

Error Saving Revision
Invalid empty element : policy(Decode_JWT) element(Source).

مثال للقطة شاشة

في واجهة مستخدم Edge، سيظهر لك مربع حوار يحتوي على خطأ:

السبب

يحدث هذا الخطأ إذا لم يتم تحديد متغيّر التدفق الذي يتضمّن JWT والذي سيتم فك ترميزه في العنصر <Source> ضِمن سياسة DecodeJWT.

على سبيل المثال، سيحدث الخطأ إذا كان العنصر <Source> لا يحتوي على قيمة، كما هو موضّح أدناه:

<Source></Source>

التشخيص

  1. حدِّد اسم سياسة DecodeJWT واسم العنصر الفارغ من رسالة الخطأ. على سبيل المثال، في رسالة الخطأ التالية، اسم سياسة DecodeJWT هو Decode_JWT واسم العنصر هو Source.

    Invalid empty element : policy(Decode_JWT) element(Source).
    
  2. راجِع سياسة DecodeJWT وتحقَّق مما إذا كان العنصر المحدّد في الخطوة 1 فارغًا. إذا كان العنصر فارغًا، فهذا هو سبب الخطأ.

    في ما يلي نموذج لسياسة DecodeJWT:

    <DecodeJWT name="Decode_JWT">
        <DisplayName>JWT Decode HS256</DisplayName>
        <Source></Source>
        <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
    </DecodeJWT>
    

    بما أنّ العنصر <Source> فارغ، ستظهر لك رسالة الخطأ:

    Invalid empty element : policy(Decode_JWT) element(Source).
    

درجة الدقّة

تأكَّد من أنّ العنصر <Source> يحدِّد قيمة JWT صالحة في متغيّر التدفق.

لحلّ المشكلة المتعلّقة بنموذج سياسة DecodeJWT، يمكنك تحديد متغيّر التدفق الذي يحتوي على عنصر JWT صالح في العنصر <Source>.

<DecodeJWT name="Decode_JWT">
    <DisplayName>JWT Decode HS256</DisplayName>
    <Source>var.jwt</Source>
    <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
</DecodeJWT>