Halaman ini berlaku untuk Apigee dan Apigee hybrid.
Lihat dokumentasi Apigee Edge.
Pahami dan kelola resource, seperti yang dijelaskan di bagian berikut.
Tentang resource
Banyak jenis kebijakan yang mengandalkan resource. Resource adalah file yang menerapkan kode atau konfigurasi yang akan dieksekusi oleh kebijakan saat dilampirkan ke proxy API. Dalam beberapa kasus, seperti JavaScript dan JavaCallout, kebijakan hanya menentukan titik lampiran di proxy API tempat beberapa kode harus dieksekusi. Kebijakan JavaScript atau JavaCallout adalah pointer ke resource.
Jenis resource
Tabel berikut meringkas jenis resource:
Jenis resource | Deskripsi |
---|---|
GraphQL (graphql) |
File skema GraphQL yang dirujuk oleh kebijakan GraphQL. |
JAR (java) |
Class Java dalam file JAR yang dirujuk oleh kebijakan JavaCallout. |
JavaScript (js) |
JavaScript yang dirujuk oleh kebijakan JavaScript. |
JavaScript (jsc) |
JavaScript yang dikompilasi yang dirujuk oleh kebijakan JavaScript. |
OpenAPI Specification (oas) |
Spesifikasi OpenAPI yang digunakan untuk memvalidasi pesan permintaan dan respons dari jenis JSON atau YAML. |
Property Set (properties) |
Kumpulan key-value pair yang dapat dirujuk sebagai set properti proxy API. |
Python (py) |
Skrip Python yang dirujuk oleh kebijakan PythonScript. Resource harus diterapkan dalam "Python murni" (hanya dalam bahasa Python). |
Security policy (securityPolicy) |
Kebijakan keamanan kustom yang dirujuk oleh kebijakan JavaCallout. |
WSDL (wsdl) |
File WSDL yang dirujuk oleh kebijakan SOAPMessageValidation. |
XSD (xsd) |
Skema XML yang dirujuk oleh kebijakan SOAPMessageValidation. |
XSL Transformations (xsl) |
Transformasi XSLT yang dirujuk oleh kebijakan XSLTransform. |
Tempat resource disimpan
Anda dapat menyimpan resource ke lokasi berikut. Anda tidak dapat menyimpan file resource di organisasi.
- Revisi proxy API: Resource hanya tersedia untuk revisi proxy API tempat resource disertakan. Misalnya, Anda dapat menyertakan resource JavaScript dengan revisi 1 proxy API, lalu mengubah penerapan untuk menggunakan skrip Python dalam revisi 2 proxy. Revisi 1 hanya memiliki akses ke resource JavaScript, dan revisi 2 hanya memiliki akses ke resource Python.
- Lingkungan: Jika disimpan di lingkungan (misalnya,
test
atauprod
), resource tersedia untuk proxy API apa pun yang di-deploy di lingkungan yang sama.
Repositori lingkungan tersedia di URI berikut, seperti yang dijelaskan oleh
List
resource files API dan nanti di Mengelola resource menggunakan API:
/organizations/$ORG/environments/$ENV/resourcefiles
Tabel berikut menunjukkan metode yang dapat Anda gunakan untuk membuat, memperbarui, dan menghapus resource untuk setiap repositori:
Repositori | Buat | Lihat | Perbarui | Hapus | ||||
---|---|---|---|---|---|---|---|---|
API | UI | API | UI | API | UI | API | UI | |
Revisi proxy API | ||||||||
Lingkungan |
Misalnya, semua file JavaScript yang tersedia untuk lingkungan test
disimpan di repositori berikut dan tersedia untuk proxy API apa pun yang berjalan di lingkungan test
:
/organizations/$ORG/environments/test/resourcefiles/jsc
Resolusi nama resource
Resolusikan nama resource dari cakupan yang paling spesifik ke yang paling umum. Nama resource di-resolve "up the chain", dari tingkat revisi proxy API, ke tingkat lingkungan.
Misalnya, Anda telah mengisi resource yang sama di dua repositori yang berbeda — revisi proxy API dan lingkungan prod
.
Pertimbangkan proxy API yang dikonfigurasi dengan kebijakan berikut:
<Javascript name='PathSetterPolicy' timeLimit='200'> <ResourceURL>jsc://pathSetter.js</ResourceURL> </Javascript>
Referensi kebijakan tidak dapat di-resolve secara eksplisit ke repositori. Resource pertama pada cakupan paling terperinci yang namanya cocok dengan nama resource dalam kebijakan akan di-resolve.
Jadi, saat proxy API di-deploy di lingkungan prod
, kebijakan akan
di-resolve ke resource pathSetter.js
cakupan lingkungan.
Saat di-deploy di lingkungan test
, Kebijakan akan di-resolve ke resource cakupan revisi proxy API, karena resource cakupan lingkungan berada di lingkungan prod
, bukan lingkungan test
.
Panduan resource Java
Anda dapat menambahkan resource Java yang dikompilasi sebagai file JAR menggunakan beberapa opsi di curl, seperti
opsi -T
, --data-binary
, atau -F
(bukan opsi
-d
). Contoh:
curl "http://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/resourcefiles?name={jar_file}&type=java" \ -X POST \ -H "Authorization: Bearer $TOKEN" \ -H "Content-Type: application/octet-stream" \ --data-binary @{jar_file}
curl "http://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/resourcefiles?name={jar_file}&type=java" \ -X POST \ -H "Authorization: Bearer $TOKEN" \ -H "Content-Type: application/octet-stream" \ -T "{jar_file}"
curl "http://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/resourcefiles?name={jar_file}&type=java" \ -X POST \ -H "Authorization: Bearer $TOKEN" \ -H "Content-Type: application/octet-stream" \ -F "file=@{jar_file}"
Lihat juga:
- Praktik terbaik Java: Praktik terbaik untuk desain dan pengembangan proxy API
- Contoh cookbook Java: Kebijakan Transformasi XSL
Mengelola resource menggunakan UI
Kelola resource yang dicakup ke revisi proxy API menggunakan UI, seperti yang dijelaskan di bagian berikut.
Melihat resource menggunakan UI
Editor Proxy Baru
Untuk melihat resource menggunakan Editor Proxy baru:
Jika Anda menggunakan UI Apigee di konsol Cloud: Pilih Proxy development > API Proxies.
Jika Anda menggunakan UI Apigee klasik: Pilih Develop > API Proxies dan di panel Proxies, pilih lingkungan untuk proxy yang resource-nya ingin Anda lihat.
Pilih proxy API yang resource-nya ingin Anda lihat. Tindakan ini akan menampilkan tampilan Proxy Editor Ringkasan.
- Klik tab Mengembangkan.
- Di panel kiri, scroll ke bawah ke Referensi. Resource saat ini ditampilkan di bawahnya.
Editor Proxy Klasik
Untuk melihat resource yang dicakup ke revisi proxy API menggunakan Editor Proxy klasik:
- Login ke UI Apigee.
- Pilih Develop > API Proxies di menu navigasi sebelah kiri.
- Pilih proxy API dalam daftar yang ingin Anda buat resource-nya.
Editor proxy API akan terbuka dan tab Ringkasan akan ditampilkan secara default. - Klik tab Mengembangkan.
- Pilih revisi di drop-down Revision, jika diperlukan.
Resource yang dicakup untuk revisi proxy API tercantum di bagian Resource di tampilan Navigator.
Membuat resource menggunakan UI
Editor Proxy Baru
Untuk membuat resource menggunakan Proxy Editor baru:
Jika Anda menggunakan UI Apigee di konsol Cloud: Pilih Proxy development > API Proxies.
Jika Anda menggunakan UI Apigee klasik: Pilih Develop > API Proxies dan di panel Proxies, pilih lingkungan untuk proxy yang resource-nya ingin Anda lihat.
Pilih proxy API yang resource-nya ingin Anda lihat. Tindakan ini akan menampilkan tampilan Proxy Editor Ringkasan.
- Klik tab Mengembangkan.
- Di panel sebelah kiri, scroll ke bawah ke Referensi, lalu klik tombol + di sebelah kanannya.
- Pada dialog Tambahkan resource, masukkan hal berikut:
- Resource type: Pilih jenis file untuk resource.
- Di bagian Sumber, pilih Buat file baru atau Impor file. Jika Anda memilih Impor file, pilih juga file yang akan diimpor di kolom File.
- Nama resource: Masukkan nama untuk resource.
- Klik Tambahkan.
Apigee Klasik
Untuk membuat resource yang dicakup ke revisi proxy API menggunakan UI Apigee klasik:
- Lihat resource yang dicakup untuk revisi proxy API.
- Klik + di bagian Resource dalam tampilan Navigator untuk membuka dialog Resource Baru.
- Masukkan:
Kolom Deskripsi Sumber Pilih untuk membuat file baru atau mengimpor file. Jenis File Pilih jenis resource dari menu drop-down. Nama File Nama file. Ekstensi nama file harus valid untuk jenis file yang dipilih.
Mengupdate resource menggunakan UI
Perbarui resource yang dicakupkan ke revisi proxy API hanya jika revisi belum di-deploy. Setelah di-deploy, revisi proxy API tidak dapat diubah.
Untuk memperbarui resource yang dicakup ke revisi proxy API menggunakan UI:
- Lihat resource yang dicakup untuk revisi proxy API.
- Di tampilan Navigator pada bagian Resource, klik resource yang ingin Anda perbarui.
Catatan: Untuk file JAR, posisikan kursor ke resource yang ingin diedit, lalu klik . - Perbarui resource, sesuai kebutuhan.
Catatan: Setelah mengupload file JAR baru, klik Update.
Menghapus resource menggunakan UI
Hapus resource yang dicakupkan ke revisi proxy API hanya jika revisi belum di-deploy. Setelah di-deploy, revisi proxy API tidak dapat diubah.
Untuk menghapus resource yang dicakupkan ke revisi proxy API menggunakan UI:
- Lihat resource yang dicakup untuk revisi proxy API.
- Di tampilan Navigator pada bagian Resource, posisikan kursor ke resource yang ingin dihapus untuk menampilkan menu tindakan.
- Klik .
- Klik Hapus untuk mengonfirmasi tindakan.
Mengelola resource menggunakan API
Kelola resource menggunakan API, seperti yang dijelaskan di bagian berikut.
Membuat resource menggunakan API
Buat resource yang dicakupkan ke revisi proxy API atau lingkungan, seperti yang dijelaskan di bagian berikut.
Membuat resource yang dicakupkan ke revisi proxy API menggunakan API
Buat resource yang dicakupkan ke revisi proxy API menggunakan API, seperti yang dijelaskan di bagian berikut.Untuk membuat resource yang dicakupkan ke revisi proxy API menggunakan API:
- Buat file resource.
- Tambahkan file resource ke paket konfigurasi proxy API.
- Upload paket menggunakan salah satu API berikut:
Membuat resource yang dicakup untuk lingkungan menggunakan API
Buat resource yang dicakup ke lingkungan menggunakan API dengan mengeluarkan permintaan POST
ke resource berikut:
/organizations/$ORG/environments/$ENV/resourcefiles
Teruskan informasi berikut dengan permintaan Anda:
- Tetapkan parameter kueri
name
ke nama resource - Tetapkan parameter kueri
type
ke jenis resource yang diperlukan - Teruskan konten file resource sebagai
application/octet-stream
ataumultipart/form-data
)
Contoh berikut menunjukkan cara membuat resource JavaScript dengan meneruskan kontennya dalam isi permintaan.
curl -X POST https://apigee.googleapis.com/v1/organizations/myorg/environments/test/resourcefiles?name=pathSetter.js&type=jsc
-H "Authorization: Bearer $TOKEN" \
-H "Content-type:application/octet-stream" \
-d 'request.headers["RequestPath"] = context.getVariable("proxy.basepath");'
Dengan $TOKEN
ditetapkan ke token akses OAuth 2.0 Anda, seperti yang dijelaskan dalam
Mendapatkan token akses OAuth 2.0. Untuk mengetahui informasi tentang opsi curl
yang digunakan dalam contoh ini, lihat
Menggunakan curl. Untuk deskripsi variabel lingkungan yang digunakan,
lihat Menetapkan variabel lingkungan untuk permintaan Apigee API.
Contoh berikut menunjukkan cara mengupload resource sebagai file dari komputer lokal Anda. Anda harus menggunakan -F
untuk upload biner di curl agar file JavaScript cakupan organisasi atau lingkungan dapat diakses oleh kebijakan JavaScript.
curl -X POST https://apigee.googleapis.com/v1/organizations/myorg/environments/test/resourcefiles?name=pathSetter.js&type=jsc
-H "Authorization: Bearer $TOKEN" \
-H "Content-type:multipart/form-data" \
-F file=@pathSetter.js
Berikut adalah contoh responsnya:
{ "name" : "pathSetter.js", "type" : "jsc" }
Melihat resource menggunakan API
Bagian berikut menjelaskan cara melihat resource menggunakan API.
Melihat semua resource menggunakan API
Lihat semua resource yang dicakup ke lingkungan menggunakan API, seperti yang dijelaskan di bagian berikut.
Dengan menggunakan API, Anda dapat melihat resource yang dicakup hanya untuk lingkungan.
Untuk melihat semua resource di lingkungan menggunakan API, buat permintaan GET
ke resource berikut:
https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/resourcefiles
Contoh berikut mencantumkan semua resource di lingkungan test
:
curl -X GET https://apigee.googleapis.com/v1/organizations/myorg/environments/test/resourcefiles
-H "Authorization: Bearer $TOKEN"
Dengan $TOKEN
ditetapkan ke token akses OAuth 2.0 Anda, seperti yang dijelaskan dalam
Mendapatkan token akses OAuth 2.0. Untuk mengetahui informasi tentang opsi curl
yang digunakan dalam contoh ini, lihat
Menggunakan curl. Untuk deskripsi variabel lingkungan yang digunakan,
lihat Menetapkan variabel lingkungan untuk permintaan Apigee API.
Untuk informasi selengkapnya, lihat API Daftar file resource lingkungan.
Berikut adalah contoh responsnya.
{
"resourceFile": [
{
"name" : "pathSetter.js",
"type" : "jsc"
}
]
}
Melihat konten resource menggunakan API
Untuk melihat konten resource di lingkungan menggunakan API, buat permintaan GET
ke resource berikut:
/organizations/$ORG/environments/$ENV/resourcefiles/$TYPE/$NAME
Contoh berikut mencantumkan konten file JavaScript pathSetter.js
(jsc
) di lingkungan test
:
curl -X GET https://apigee.googleapis.com/v1/organizations/myorg/environments/test/resourcefiles/jsc/pathSetter.js
-H "Authorization: Bearer $TOKEN"
Dengan $TOKEN
ditetapkan ke token akses OAuth 2.0 Anda, seperti yang dijelaskan dalam
Mendapatkan token akses OAuth 2.0. Untuk mengetahui informasi tentang opsi curl
yang digunakan dalam contoh ini, lihat
Menggunakan curl. Untuk deskripsi variabel lingkungan yang digunakan,
lihat Menetapkan variabel lingkungan untuk permintaan Apigee API.
Berikut adalah contoh responsnya:
request.headers["RequestPath"] = context.getVariable("proxy.basepath");
Memperbarui resource menggunakan API
Perbarui resource yang dicakup ke revisi proxy API atau lingkungan, seperti yang dijelaskan di bagian berikut.
Memperbarui resource yang dicakupkan ke revisi proxy API menggunakan API
Untuk memperbarui resource yang dicakup ke revisi proxy API menggunakan API:
- Download paket konfigurasi proxy API menggunakan Get API proxy revision API dengan opsi berikut:
- Tetapkan parameter kueri
format
kebundle
- Tetapkan header
Accept
keapplication/zip
- Tetapkan parameter kueri
- Perbarui file resource di paket konfigurasi proxy API.
- Upload paket konfigurasi proxy API menggunakan API Update API proxy revision.
Memperbarui resource yang dicakup ke lingkungan menggunakan API
Perbarui resource yang dicakup ke lingkungan menggunakan API dengan mengeluarkan permintaan PUT
ke resource berikut:
/organizations/$ORG/environments/$ENV/resourcefiles/$TYPE/$NAME
Teruskan konten file resource sebagai application/octet-stream
atau multipart/form-data
.
Contoh berikut menunjukkan cara mengupdate resource JavaScript dengan meneruskan kontennya dalam isi permintaan.
curl -X PUT https://apigee.googleapis.com/v1/organizations/myorg/environments/test/resourcefiles/jsc/pathSetter.js
-H "Authorization: Bearer $TOKEN" \
-H "Content-type:application/octet-stream" \
-d 'request.headers["RequestPath"] = context.getVariable("proxy.basepath");'
Dengan $TOKEN
ditetapkan ke token akses OAuth 2.0 Anda, seperti yang dijelaskan dalam
Mendapatkan token akses OAuth 2.0. Untuk mengetahui informasi tentang opsi curl
yang digunakan dalam contoh ini, lihat
Menggunakan curl. Untuk deskripsi variabel lingkungan yang digunakan,
lihat Menetapkan variabel lingkungan untuk permintaan Apigee API.
Contoh berikut menunjukkan cara memperbarui file resource menggunakan file dari komputer lokal Anda. Anda harus menggunakan -F
untuk upload biner di curl agar file JavaScript cakupan lingkungan atau organisasi dapat diakses oleh kebijakan JavaScript.
curl -X PUT https://apigee.googleapis.com/v1/organizations/myorg/environments/test/resourcefiles/jsc/pathSetter.js
-H "Authorization: Bearer $TOKEN" \
-H "Content-type:multipart/form-data" \
-F file=@pathSetter.js
Berikut adalah contoh responsnya:
{ "name" : "pathSetter.js", "type" : "jsc" }
Menghapus resource menggunakan API
Hapus resource yang dicakupkan ke revisi proxy API atau lingkungan, seperti yang dijelaskan di bagian berikut.
Menghapus resource yang dicakup ke revisi proxy API menggunakan API
Dengan hybrid, untuk menghapus resource yang dicakup ke proxy API menggunakan API:
- Download paket konfigurasi proxy API menggunakan Get API proxy revision API dengan opsi berikut:
- Tetapkan parameter kueri
format
kebundle
- Tetapkan header
Accept
keapplication/zip
- Tetapkan parameter kueri
- Hapus file resource dari paket konfigurasi proxy API.
- Upload paket konfigurasi proxy API menggunakan API Update API proxy revision.
Menghapus resource yang dicakupkan ke lingkungan menggunakan API
Hapus resource yang dicakup ke lingkungan menggunakan API, seperti yang dijelaskan di bagian berikut.
Untuk menghapus resource yang dicakup ke lingkungan menggunakan API, buat permintaan DELETE
ke resource berikut:
https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/resourcefiles/$TYPE/$NAME
Contoh berikut menghapus file resource JavaScript pathSetter.js
dari lingkungan test
:
curl -X DELETE https://apigee.googleapis.com/v1/organizations/my-organization/environments/test/resourcefiles/jsc/pathSetter.js \ -H "Authorization: Bearer $TOKEN"
Dengan $TOKEN
ditetapkan ke token akses OAuth 2.0 Anda, seperti yang dijelaskan dalam
Mendapatkan token akses OAuth 2.0. Untuk mengetahui informasi tentang opsi curl
yang digunakan dalam contoh ini, lihat
Menggunakan curl. Untuk deskripsi variabel lingkungan yang digunakan,
lihat Menetapkan variabel lingkungan untuk permintaan Apigee API.
Untuk informasi selengkapnya, lihat Menghapus API file resource.
Berikut adalah contoh responsnya.
{
"name" : "pathSetter.js",
"type" : "jsc"
}
Mengakses resource
Cara Anda mengakses resource bergantung pada jenis resource. Untuk informasi selengkapnya, lihat Ringkasan referensi kebijakan.
Contoh di bagian ini menunjukkan cara membuat dan mengelola resource JavaScript bernama pathSetter.js
agar dapat direferensikan oleh
kebijakan jenis JavaScript.
Untuk melampirkan JavaScript ke PostFlow Permintaan, buat kebijakan bernama
PathSetterPolicy.xml
yang mereferensikan file pathSetter.js
:
<Javascript name='PathSetterPolicy' timeLimit='200'> <ResourceURL>jsc://pathSetter.js</ResourceURL> </Javascript>
Kemudian, referensikan kebijakan dalam konfigurasi Endpoint:
<PostFlow> <Request> <Step><Name>PathSetterPolicy</Name></Step> </Request> <PostFlow>
Untuk mengetahui informasi selengkapnya, lihat Kebijakan JavaScript.