Pemecahan masalah error deployment kebijakan DecodeJWT

Anda sedang melihat dokumentasi Apigee dan Apigee hybrid.
Lihat Dokumentasi Apigee Edge.

ini.

InvalidEmptyElement

Pesan error

Deployment proxy API melalui UI Apigee atau API gagal dengan pesan {i>error<i} ini:

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

Contoh pesan error

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

Screenshot contoh

Di UI Apigee, Anda akan melihat kotak dialog dengan error:

Terjadi error saat menyimpan revisi.

Penyebab

Error ini terjadi jika variabel flow yang berisi JWT yang akan didekode tidak ditentukan dalam elemen <Source> dari kebijakan DecodeJWT.

Misalnya, error akan terjadi jika elemen <Source> tidak berisi seperti yang ditunjukkan di bawah ini:

<Source></Source>

Diagnosis

  1. Identifikasi nama kebijakan DecodeJWT dan nama elemen yang kosong dari pesan error. Misalnya, dalam pesan error berikut, nama kebijakan DecodeJWT adalah Decode_JWT dan nama elemennya adalah Source.

    Invalid empty element : policy(Decode_JWT) element(Source).
    
  2. Periksa kebijakan DecodeJWT dan verifikasi apakah elemen yang diidentifikasi pada Langkah 1 kosong. Jika elemen kosong, maka itulah penyebab error.

    Berikut adalah contoh kebijakan DecodeJWT:

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

    Karena elemen <Source> kosong, Anda mendapatkan error:

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

Resolusi

Pastikan elemen <Source> menentukan JWT yang valid dalam variabel flow.

Untuk memperbaiki masalah pada contoh kebijakan DecodeJWT, Anda dapat menentukan variabel flow yang berisi JWT yang valid di elemen <Source>.

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