Mengelola resource

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 atau prod), 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:

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:

  1. Jika Anda menggunakan UI Apigee di Cloud Console: 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.

  2. Pilih proxy API yang resource-nya ingin Anda lihat. Tindakan ini akan menampilkan tampilan Proxy Editor Ringkasan.

  3. Klik tab Mengembangkan.
  4. 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:

  1. Login ke UI Apigee.
  2. Pilih Develop > API Proxies di menu navigasi sebelah kiri.
  3. Pilih proxy API dalam daftar yang ingin Anda buat resource-nya.
    Editor proxy API akan terbuka dan tab Ringkasan akan ditampilkan secara default.
  4. Klik tab Mengembangkan.
  5. 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:

  1. Jika Anda menggunakan UI Apigee di Cloud Console: 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.

  2. Pilih proxy API yang resource-nya ingin Anda lihat. Tindakan ini akan menampilkan tampilan Proxy Editor Ringkasan.

  3. Klik tab Mengembangkan.
  4. Di panel sebelah kiri, scroll ke bawah ke Referensi dan klik tombol + di sebelah kanannya.
  5. 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.
  6. Klik Tambahkan.

Apigee Klasik

Untuk membuat resource yang dicakup ke revisi proxy API menggunakan UI Apigee klasik:

  1. Lihat resource yang dicakup untuk revisi proxy API.
  2. Klik + di bagian Resource pada tampilan Navigator untuk membuka dialog Resource Baru.
  3. 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:

  1. Lihat resource yang dicakup untuk revisi proxy API.
  2. 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 Gambar ikon edit..
  3. 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:

  1. Lihat resource yang dicakup untuk revisi proxy API.
  2. Di tampilan Navigator pada bagian Resource, posisikan kursor ke resource yang ingin dihapus untuk menampilkan menu tindakan.
  3. Klik Gambar ikon hapus..
  4. 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 dicakup 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:

  1. Buat file resource.
  2. Tambahkan file resource ke paket konfigurasi proxy API.
  3. 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 atau multipart/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 respons:

{
  "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 respons:

request.headers["RequestPath"] = context.getVariable("proxy.basepath");

Memperbarui resource menggunakan API

Perbarui resource yang dicakupkan 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:

  1. Download paket konfigurasi proxy API menggunakan Get API proxy revision API dengan opsi berikut:
    • Tetapkan parameter kueri format ke bundle
    • Tetapkan header Accept ke application/zip
  2. Perbarui file resource di paket konfigurasi proxy API.
  3. Upload paket konfigurasi proxy API menggunakan API Update API proxy revision.

Memperbarui resource yang dicakup untuk 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 organisasi atau lingkungan 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 respons:

{
  "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:

  1. Download paket konfigurasi proxy API menggunakan Get API proxy revision API dengan opsi berikut:
    • Tetapkan parameter kueri format ke bundle
    • Tetapkan header Accept ke application/zip
  2. Hapus file resource dari paket konfigurasi proxy API.
  3. 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.