16.08.17 - Apigee Edge untuk catatan rilis Public Cloud

Anda sedang melihat dokumentasi Apigee Edge.
Buka Dokumentasi Apigee X.
info

Pada hari Selasa, 30 Agustus 2016, kami merilis versi baru Apigee Edge untuk Cloud Publik.

Fitur dan info terbaru

Berikut adalah fitur dan update baru dalam rilis ini.

Payload JSON di Tugas Pesan dan Raise (Mengedepankan Kesalahan)

Saat menyetel payload JSON menggunakan kebijakan Tetapkan Pesan atau Tingkatkan Kesalahan, pengguna terkadang diperlukan untuk menggunakan solusi guna memastikan pesan JSON diformat dengan benar pada runtime, seperti mengawali payload dengan garis miring terbalik "\" atau menentukan variabelPrefix dan variabelSuffix pada elemen Payload, meskipun tidak ada variabel yang digunakan dalam pesan.

Dengan peningkatan ini, tidak diperlukan solusi untuk memastikan pemformatan pesan JSON yang tepat, dan Variabel dapat ditentukan menggunakan tanda kurung kurawal tanpa membuat JSON yang tidak valid. Misalnya, perintah berikut akan menyisipkan nilai message.content ke dalam pesan JSON:

<Payload contentType="application/json">{"message" : "{message.content}"}</Payload>

Jika Anda menggunakan solusi, kode Anda akan terus berfungsi sebagaimana mestinya. Anda juga dapat menggunakan variabelPrefix dan variabelSuffix, bukan tanda kurung kurawal, untuk menunjukkan variabel.

Lihat <Set><Payload> dalam kebijakan Tetapkan Pesan dan Kebijakan Raise Fault dokumen referensi. (APIRT-1160)

Peningkatan kebijakan XML ke JSON

Kebijakan XML ke JSON telah ditingkatkan kualitasnya dengan kemampuan berikut. Anda dapat mengonfigurasi kebijakan untuk:

  • Perlakukan beberapa elemen XML sebagai array selama konversi, yang menempatkan nilai dalam persegi tanda kurung '[ ]' dalam dokumen JSON.
  • Hapus atau hilangkan level hierarki dokumen XML di dokumen JSON akhir.

Untuk informasi selengkapnya, lihat XML ke kebijakan JSON. (APIRT-1144)

Beberapa karakter pengganti di Jalur resource Produk API

Saat menentukan jalur resource di Produk API, Anda dapat menyertakan karakter pengganti di beberapa tempat dalam resource Anda. Misalnya, /team/*/invoices/** mengizinkan panggilan API dengan semua satu nilai setelah /team dan jalur resource mana pun setelah invoices/. URI yang diizinkan pada panggilan API akan menjadi proxyBasePath/team/finance/invoices/company/a.

Jika setelah rilis ini jalur resource Produk API yang ada berhenti berfungsi seperti yang diharapkan, tetapkan properti berikut di organisasi Anda untuk kembali ke properti sebelumnya perilaku: features.enableStandardWildCardMatchForAPIProductResources = true

(MGMT-3273)

Fungsi kripto di JavaScript

Kumpulan fungsi crypto JavaScript berperforma tinggi baru tersedia untuk membuat, mendapatkan, dan memperbarui yang berikut ini memiliki objek: MD5, SHA-1, SHA256, SHA512. Objek crypto juga memungkinkan Anda mendapatkan tanggal dalam berbagai format. Untuk informasi selengkapnya, lihat model objek JavaScript. (APIRT-2886)

Versi JAR Info Java memeriksa

Saat mengupload resource Java JAR ke proxy API, kode status HTTP 400 ditampilkan (bukan 500) jika versi resource Java tidak kompatibel dengan Edge yang didukung Java, yang tercantum dalam Perangkat lunak yang didukung dan versi yang didukung. (MGMT-3420)

Validasi resource proxy API

Bila Anda memiliki file sumber daya proxy API (seperti JavaScript atau Java JAR) yang disimpan di lingkungan atau organisasi, kerangka kerja validasi tidak lagi mengharuskan Anda menyertakan sumber daya tersebut pada level proxy API dalam paket proxy agar impor dapat lulus validasi. Validasi resource kini dilakukan pada waktu deployment, bukan pada waktu impor. (MGMT-1430)

Mengonfigurasi waktu tunggu untuk proxy API individual

Anda dapat mengonfigurasi proxy API agar waktu habis setelah waktu yang ditentukan (dengan waktu tunggu gateway 504 habis status). Kasus penggunaan utamanya adalah untuk pelanggan Private Cloud yang memiliki proxy API yang menggunakan lebih lama untuk dijalankan. Misalnya, Anda memerlukan proxy tertentu untuk waktu tunggu 3 menit. Anda dapat gunakan properti api.timeout baru dalam konfigurasi untuk proxy API. Berikut caranya Anda akan melakukannya dengan contoh 3 menit:

  1. Pertama, pastikan untuk mengonfigurasi load balancer, router, dan pemroses pesan agar kehabisan waktu setelah 3 menit.
  2. Kemudian, konfigurasi proxy yang relevan agar waktu tunggu habis pada 3 menit. Tentukan nilai di dalam milidetik. Contoh:
    <ProxyEndpoint name="default">
      <HTTPProxyConnection>
        <BasePath>/v1/weather</BasePath> 
        <Properties> 
          <!-- api.timeout is in milliseconeds -->
          <Property name="api.timeout">180000</Property>
        </Properties>
        ...
  3. Namun, perhatikan bahwa menaikkan waktu tunggu sistem dapat menyebabkan masalah performa, karena semua proxy tanpa setelan api.timeout menggunakan load balancer, router, dan router baru yang lebih tinggi waktu tunggu pemroses pesan. Jadi, konfigurasikan proxy API lain yang tidak memerlukan waktu tunggu yang lebih lama untuk menggunakan waktu tunggu yang lebih rendah. Misalnya, kode berikut menetapkan proxy API ke waktu habis setelah 1 menit:
    <Property name="api.timeout">60000</Property>

Pelanggan cloud, yang tidak dapat mengubah waktu tunggu Edge, juga dapat mengonfigurasi asalkan waktu tunggu lebih singkat dari waktu tunggu prosesor pesan Edge standar 57 detik.

Anda tidak dapat mengisi nilai dengan variabel. Properti ini tercakup dalam Referensi properti endpoint. (APIRT-1778)

TLS/SSL untuk logging Pesan Kebijakan

<KeyStore> dan <TrustStore> dapat ditetapkan di SSLInfo pada kebijakan Logging Pesan, yang mengizinkan TLS/SSL satu dan dua arah dengan layanan pencatatan log. Anda mengonfigurasi SSLInfo pada kebijakan Pencatatan Pesan dengan cara yang sama seperti dilakukan pada proxy TargetEndpoint. Namun, Message Logging TLS/SSL hanya mendukung protokol TCP. (APIRT-1858)

Bug diperbaiki

Bug berikut telah diperbaiki dalam rilis ini. Daftar ini terutama ditujukan bagi pengguna yang ingin memeriksa jika tiket dukungan telah diperbaiki. Ini tidak dirancang untuk memberikan informasi terperinci tentang semua pengguna.

ID Masalah Deskripsi
SECENG-609 Panggilan runtime tidak gagal selama penghapusan truststore terkait atau saat sertifikat yang valid di truststore dihapus
MGMT-3404 Melihat/mengambil log Node.js dan men-deploy proxy sangatlah mudah lambat
MGMT-3400 Panggilan ke /userroles management API akan gagal jika pengguna yang melakukan panggilan memiliki "+" login namanya
MGMT-3368 java.lang.ArrayIndexOutOfBoundsException: 1, saat mengimpor paket Proxy API yang berisi direktori resource/node/resources
MGMT-3364 OAuthV2: pemeriksaan redirect_uri
MGMT-3319 Entri daftar di vault yang memiliki nilai null di salah satu entri tidak berfungsi untuk organisasi (CPS dan non-CPS)
MGMT-3226 Kueri di tingkat organisasi/lingkungan tidak boleh mengambil semua data yang menyebabkan API gagal
Release_160302 memiliki bug dengan daftar resource di tingkat organisasi/lingkungan tingkat gagal jika ukuran kumulatif resource di atas 16 MB, perbaikan ini akan menangani anotasi.
AXAPP-2429 Analytics API menggunakan response_status_code menampilkan akses data kesalahan
AXAPP-2386 Memperbaiki konten laporan kosong di laporan email harian Analytics
AXAPP-2347 Tidak menerima email ringkasan analisis harian
APIRT-3141 Keterangan Java gagal saat memanggil ExecutionResult() baru, karena konstruktor telah diubah menjadi pribadi
APIRT-3140 Kebijakan Servicecallout tidak berfungsi di panggilan HEAD api
APIRT-3131 Dibuat dengan salah yang ditampilkan untuk Proxy API saat menggunakan monetisasi dengan penyedia autentikasi eksternal
APIRT-3121 Perubahan file resource organisasi yang dilakukan tidak 100% efektif
APIRT-3117 MP mencapai penggunaan CPU 100% dan berhenti melayani traffic
APIRT-3016 Router "Waktu panggilan habis" error pada deployment
APIRT-2975 Kegagalan upload paket sertifikat
APIRT-2955 Tidak dapat menyamarkan atribut tertentu dari data respons JSON untuk keluhan FHIR Header Content-Type 'application/json+fhir'
APIRT-2946 Kebijakan OAuthV2-RefreshToken tidak menyembunyikan atribut meskipun tampilan disetel ke salah
APIRT-2908 Menerapkan TLS1.2 untuk panggilan API internal diperlukan setelah update TLS1.2 pada virtualhost
APIRT-2901 Respons yang di-zip sebagai hasil dari cache akan dikompresi dua kali
APIRT-2873 Anggota parlemen menampilkan NullPointerException yang terkait dengan VerifyAPIKey setelah penghapusan products/developers/proxies
APIRT-2871 Kebijakan IOIntensive muncul dua kali di Trace
APIRT-2825 Error tata bahasa dalam respons error accesstoken
APIRT-2750 Kegagalan traffic yang tinggi di organisasi tertentu
APIRT-2685 Traffic tidak dapat mengalir dengan menampilkan error yang tidak diketahui
APIRT-2647 "Stream input dasar menampilkan nol byte" {i>error<i} dengan nonprod/dev
APIRT-2630 Masalah sesekali saat mencoba membaca nilai dari cache
APIRT-2620 Kumpulan thread terpisah untuk beberapa langkah pemblokiran
APIRT-2610 java.lang.ClassCastException dengan kebijakan Cache Respons
APIRT-2608 Error penguraian header Terakhir Diubah dalam kebijakan Cache Respons
APIRT-2605 "organisasi" dan "lingkungan" variabel tidak boleh ditimpa untuk ditimpa melalui kebijakan
APIRT-2566 Kebijakan OAuthV2 menampilkan Header WWW-Authenticate dengan format yang salah
APIRT-2491 Update TargetServer gagal karena waktu tunggu RPC habis antara pengelolaan dan mpd
APIRT-2386 Cakupan string kosong dibuat di produk API dengan OAuth yang Diizinkan kosong cakupan
APIRT-2383 Kebijakan Transformasi XSL tampaknya tidak mencatat data apa pun pada kesalahan
APIRT-2364 Variabel aliran kesalahan OAuth tidak diperbarui saat terjadi error
APIRT-2216 Peristiwa yang dikirim server - streaming peristiwa yang mengalami masalah dalam produksi
APIRT-2079 Panggilan cURL DEBUG tidak berhenti setelah waktu tunggu berakhir untuk panggilan yang dibuat sesi
APIRT-1495 Perlindungan Ancaman XML tidak menangkap Jenis Konten pertama
APIRT-347 Kebijakan XSL tidak divalidasi dengan benar saat impor (tidak menetapkan hasil untuk membuat output variabel seperti yang didokumentasikan)