Anda sedang melihat dokumentasi Apigee Edge.
Buka
dokumentasi Apigee X. info
Pada Selasa, 30 Agustus 2016, kami merilis versi baru Apigee Edge untuk Public Cloud.
Fitur dan info terbaru
Berikut adalah fitur dan update baru dalam rilis ini.
Payload JSON dalam Pesan Penetapan dan Pemicuan Kesalahan
Dengan peningkatan ini, tidak ada solusi yang diperlukan untuk memastikan pemformatan pesan JSON yang tepat, dan variabel dapat ditentukan menggunakan tanda kurung kurawal tanpa membuat JSON yang tidak valid. Misalnya, berikut menyisipkan nilai message.content dalam pesan JSON:
<Payload contentType="application/json">{"message" : "{message.content}"}</Payload>
Jika Anda menggunakan solusi sementara, kode Anda akan terus berfungsi seperti apa adanya. Anda juga dapat menggunakan variablePrefix dan variableSuffix, bukan kurung kurawal, untuk menunjukkan variabel.
Lihat elemen <Set><Payload> dalam kebijakan Assign Message dan kebijakan Raise Fault di dokumen referensi. (APIRT-1160)
Peningkatan kebijakan XML ke JSON
Kebijakan XML ke JSON telah ditingkatkan dengan kemampuan berikut. Anda dapat mengonfigurasi kebijakan untuk:
- Perlakukan beberapa elemen XML sebagai array selama konversi, yang menempatkan nilai dalam tanda kurung siku '[ ]' dalam dokumen JSON.
- Menghapus atau menghilangkan tingkat hierarki dokumen XML dalam dokumen JSON akhir.
Untuk mengetahui informasi selengkapnya, lihat Kebijakan XML ke 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
jalur resource. Misalnya, /team/*/invoices/** mengizinkan panggilan API dengan
satu nilai setelah /team dan jalur resource apa pun
setelah invoices/. URI yang diizinkan pada panggilan API adalah 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 perilaku
sebelumnya: features.enableStandardWildCardMatchForAPIProductResources = true
(MGMT-3273)
Fungsi kriptografi di JavaScript
Serangkaian fungsi JavaScript crypto berperforma tinggi yang baru tersedia untuk membuat, mendapatkan, dan memperbarui objek hash berikut: MD5, SHA-1, SHA256, SHA512.
Objek crypto juga memungkinkan Anda mendapatkan
tanggal dalam berbagai format. Untuk mengetahui informasi selengkapnya, lihat Model objek JavaScript.
(APIRT-2886)
Pemeriksaan versi JAR Panggilan Java
Saat mengupload resource JAR Java ke proxy API, kode status HTTP 400 akan ditampilkan (bukan 500) jika versi resource Java tidak kompatibel dengan versi Java yang didukung Edge, yang tercantum dalam Software yang didukung dan versi yang didukung. (MGMT-3420)
Validasi resource proxy API
Jika Anda memiliki file resource proxy API (seperti JAR JavaScript atau Java) yang disimpan di cakupan lingkungan atau organisasi, framework validasi tidak lagi mengharuskan Anda untuk menyertakan resource tersebut di tingkat proxy API dalam paket proxy agar impor lulus validasi. Validasi resource kini terjadi pada waktu deployment, bukan pada waktu impor. (MGMT-1430)
Mengonfigurasi waktu tunggu untuk setiap proxy API
Anda dapat mengonfigurasi proxy API agar waktu tunggu habis setelah waktu tertentu (dengan status waktu tunggu gateway 504). Kasus penggunaan utamanya adalah untuk pelanggan Private Cloud yang memiliki proxy API yang memerlukan waktu lebih lama untuk dieksekusi. Misalnya, Anda memerlukan proxy tertentu agar waktu tunggu habis dalam 3 menit. Anda dapat
menggunakan properti api.timeout baru dalam konfigurasi untuk proxy API. Berikut cara melakukannya dengan contoh 3 menit:
- Pertama, pastikan untuk mengonfigurasi load balancer, router, dan pemroses pesan agar waktu tunggu habis setelah 3 menit.
- Kemudian, konfigurasikan proxy yang relevan agar waktu tunggu habis dalam 3 menit. Tentukan nilai dalam
milidetik. Contoh:
<ProxyEndpoint name="default"> <HTTPProxyConnection> <BasePath>/v1/weather</BasePath> <Properties> <!-- api.timeout is in milliseconeds --> <Property name="api.timeout">180000</Property> </Properties> ... - Namun, perhatikan bahwa memperpanjang waktu tunggu sistem dapat menyebabkan masalah performa, karena
semua proxy tanpa setelan api.timeout menggunakan load balancer, router, dan
waktu tunggu pemroses pesan yang baru dan lebih tinggi. Jadi, konfigurasi proxy API lain yang tidak memerlukan waktu tunggu yang lebih lama
untuk menggunakan waktu tunggu yang lebih rendah. Misalnya, berikut menetapkan proxy API agar waktu tunggu habis setelah 1
menit:
<Property name="api.timeout">60000</Property>
Pelanggan Cloud, yang tidak dapat mengubah waktu tunggu Edge, juga dapat mengonfigurasi waktu tunggu proxy API, selama waktu tunggu lebih singkat daripada waktu tunggu pemroses pesan Edge standar, yaitu 57 detik.
Anda tidak dapat mengisi nilai dengan variabel. Properti ini dibahas dalam Referensi properti endpoint. (APIRT-1778)
TLS/SSL untuk Pencatatan pesan Kebijakan
<KeyStore> dan <TrustStore> dapat ditetapkan dalam
konfigurasi SSLInfo pada kebijakan Message Logging,
yang memungkinkan TLS/SSL satu arah dan dua arah dengan layanan logging. Anda mengonfigurasi SSLInfo pada kebijakan Message Logging dengan cara yang sama seperti
pada
TargetEndpoint proxy. Namun, TLS/SSL Pencatatan Pesan hanya mendukung protokol TCP.
(APIRT-1858)
Bug yang diperbaiki
Bug berikut telah diperbaiki dalam rilis ini. Daftar ini terutama ditujukan bagi pengguna yang memeriksa apakah tiket dukungan mereka telah diselesaikan. Fitur ini tidak dirancang untuk memberikan informasi mendetail bagi 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 sangat lambat |
| MGMT-3400 | Panggilan ke API pengelolaan /userroles gagal jika pengguna yang melakukan panggilan memiliki tanda "+" dalam namanya |
| MGMT-3368 | java.lang.ArrayIndexOutOfBoundsException: 1, saat mengimpor paket API Proxy yang berisi direktori resources/node/resources |
| MGMT-3364 | OAuthV2: pemeriksaan redirect_uri |
| MGMT-3319 | Entri daftar di brankas 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 menarik semua data yang menyebabkan API gagal Release_160302 memiliki bug yang menyebabkan listingan resource di tingkat organisasi/lingkungan gagal jika ukuran kumulatif resource di atas 16 MB. Perbaikan ini akan mengatasi masalah tersebut. |
| AXAPP-2429 | Analytics API menggunakan response_status_code menampilkan error akses data |
| AXAPP-2386 | Memperbaiki konten laporan kosong dalam laporan email harian Analytics |
| AXAPP-2347 | Tidak menerima email ringkasan analisis harian |
| APIRT-3141 | Java Callout gagal saat memanggil ExecutionResult() baru, karena konstruktor telah dibuat privat |
| APIRT-3140 | Kebijakan ServiceCallout tidak berfungsi dalam panggilan API HEAD |
| APIRT-3131 | createdBy yang salah 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 menyajikan traffic |
| APIRT-3016 | Error "Waktu panggilan habis" pada router saat deployment |
| APIRT-2975 | Gagal mengupload paket sertifikat |
| APIRT-2955 | Tidak dapat menyamarkan atribut tertentu dari data respons JSON untuk header Content-Type yang sesuai dengan FHIR 'application/json+fhir' |
| APIRT-2946 | Kebijakan OAuthV2-RefreshToken tidak menyembunyikan atribut meskipun tampilan disetel ke false |
| APIRT-2908 | Penerapan TLS1.2 untuk panggilan API internal diperlukan setelah update TLS1.2 di virtualhost |
| APIRT-2901 | Respons yang di-gzip yang ditampilkan dari cache dikompresi dua kali |
| APIRT-2873 | MP memunculkan NullPointerException terkait VerifyAPIKey setelah penghapusan produk/developer/proxy |
| APIRT-2871 | Kebijakan IOIntensive muncul dua kali di Trace |
| APIRT-2825 | Kesalahan tata bahasa dalam respons error accesstoken |
| APIRT-2750 | Kegagalan traffic tinggi di organisasi tertentu |
| APIRT-2685 | Traffic tidak dapat mengalir karena terjadi error yang tidak diketahui |
| APIRT-2647 | Error"Underlying input stream returned zero bytes" dengan nonprod/dev |
| APIRT-2630 | Masalah terputus-putus 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 Last-Modified dalam kebijakan Cache Respons |
| APIRT-2605 | Variabel"organization" dan "environment" tidak boleh ditimpa melalui kebijakan |
| APIRT-2566 | Kebijakan OAuthV2 menampilkan Header WWW-Authenticate yang salah format |
| APIRT-2491 | Update TargetServer gagal karena waktu tunggu RPC habis antara pengelolaan dan mps |
| APIRT-2386 | Cakupan string kosong dibuat di produk API dengan cakupan OAuth yang Diizinkan kosong |
| APIRT-2383 | Kebijakan Transformasi XSL tampaknya tidak mencatat data apa pun saat terjadi error |
| APIRT-2364 | Variabel alur kesalahan OAuth tidak diperbarui saat terjadi error |
| APIRT-2216 | Server mengirim peristiwa - aliran peristiwa mengalami masalah di prod |
| APIRT-2079 | Panggilan cURL DEBUG tidak berhenti setelah waktu tunggu habis untuk sesi yang dibuat |
| APIRT-1495 | Perlindungan Ancaman XML tidak menangkap Content-Type fhir |
| APIRT-347 | Kebijakan XSL tidak divalidasi dengan benar saat diimpor (tidak menetapkan hasil ke variabel output seperti yang didokumentasikan) |