عیب‌یابی خطای استقرار خط‌مشی DecodeJWT

درحال مشاهده اسناد Apigee Edge هستید.
به اسناد Apigee X بروید.
اطلاعات

InvalidEmptyElement

پیام خطا

استقرار پراکسی API ازطریق «واسط کاربر 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 را بررسی کنید و مطمئن شوید که عنصر شناسایی‌شده در «مرحله ۱» خالی است. اگر عنصر خالی باشد، دلیل خطا همین است.

    در اینجا یک خط‌مشی نمونه 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>