DecodeJWT politika dağıtımı hatası sorunlarını giderme

Apigee Edge belgelerini görüntülüyorsunuz.
Apigee X belgelerine gidin.
bilgi

InvalidEmptyElement

Hata mesajı

API proxy'sinin Edge kullanıcı arayüzü veya Edge Management API aracılığıyla dağıtılması şu hata mesajıyla başarısız olur:

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

Örnek hata mesajı

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

Örnek ekran görüntüsü

Edge kullanıcı arayüzünde hata içeren bir iletişim kutusu görürsünüz:

Neden

Bu hata, kodu çözülecek JWT'yi içeren akış değişkeni, DecodeJWT politikasının <Source> öğesinde belirtilmemişse ortaya çıkar.

Örneğin, aşağıda gösterildiği gibi <Source> öğesi bir değer içermiyorsa hata oluşur:

<Source></Source>

Teşhis

  1. DecodeJWT politikasının adını ve hata mesajındaki boş olan öğenin adını tanımlayın. Örneğin, aşağıdaki hata mesajında DecodeJWT politikasının adı Decode_JWT, öğe adı ise Source şeklindedir.

    Invalid empty element : policy(Decode_JWT) element(Source).
    
  2. DecodeJWT politikasını inceleyin ve 1. adımda tanımlanan öğenin boş olup olmadığını doğrulayın. Öğe boşsa hatanın nedeni budur.

    Aşağıda örnek bir DecodeJWT politikası görebilirsiniz:

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

    <Source> öğesi boş olduğu için şu hatayı alırsınız:

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

Çözünürlük

<Source> öğesinin, akış değişkeninde geçerli bir JWT belirttiğinden emin olun.

Örnek DecodeJWT politikasıyla ilgili sorunu düzeltmek için <Source> öğesinde geçerli bir JWT içeren akış değişkenini belirtebilirsiniz.

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