Menggunakan kumpulan properti

Halaman ini berlaku untuk Apigee dan Apigee Hybrid.

Lihat dokumentasi Apigee Edge.

Set properti adalah kumpulan pasangan kunci/nilai kustom yang menyimpan data. Proxy API dapat mengambil data ini saat dijalankan.

Mengapa menggunakan set properti?

Biasanya, Anda menggunakan set properti untuk menyimpan data yang tidak akan habis masa berlakunya dan tidak boleh dikodekan secara permanen dalam logika proxy API Anda. Anda dapat mengakses data set properti di mana saja dalam proxy tempat Anda dapat mengakses variabel alur.

Kasus penggunaan umum untuk set properti adalah memberikan nilai yang terkait dengan satu lingkungan atau lingkungan lainnya. Misalnya, Anda dapat membuat set properti cakupan lingkungan dengan nilai konfigurasi yang spesifik untuk proxy yang berjalan di lingkungan pengujian, dan set lainnya untuk lingkungan produksi.

Contoh:

  • Set properti prod-env.properties berisi properti log-level=error
  • Set properti test-env.properties berisi properti log-level=debug

Demikian pula, Anda dapat menyimpan informasi perutean khusus lingkungan:

  • Set properti test-env.properties berisi properti db-url=mydomain.test.datasource.com
  • Set properti prod-env.properties berisi properti db-url=mydomain.prod.datasource.com

Cakupan kumpulan properti

Anda dapat mencakup set properti ke revisi atau lingkungan proxy API saat membuat set properti. Anda tidak dapat mencakup kumpulan properti ke organisasi.

Tabel berikut menjelaskan perilaku dan administrasi set properti dengan cakupan organisasi dan proxy API:

Cakupan Perilaku runtime Administrasi
Proxy API Properti hanya tersedia untuk revisi proxy API yang berisi resource set properti. Tidak ada revisi atau proxy API lain dari proxy yang sama yang dapat mengakses set properti tertentu tersebut. Administrator dapat menggunakan /resourcefiles Apigee API atau UI untuk membuat dan mengedit set properti. Menyimpan proxy API di UI akan membuat revisi baru, dan set properti yang diubah hanya akan dikaitkan dengan revisi tersebut.
Lingkungan Properti tersedia untuk semua revisi semua proxy API dalam lingkungan tersebut. Proxy API dalam lingkungan lain tidak dapat mengakses set properti tersebut. Administrator harus menggunakan Apigee API /resourcefiles untuk membuat, melihat, memperbarui, atau menghapus set properti yang tercakup dalam lingkungan. Kumpulan properti ini tidak ditampilkan dan tidak dapat diedit di UI Apigee.

Batas set properti

Apigee menerapkan batasan pada set properti, seperti yang dijelaskan dalam Batas. Selain itu, file set properti harus menggunakan sintaksis yang sama dengan file properti Java, dengan satu pengecualian: Anda tidak dapat menggunakan kurung kurawal {} dalam file set properti.

Membuat file set properti

Biasanya, Anda menyimpan nilai set properti sebagai pasangan nama/nilai dalam file. File set properti adalah file resource berjenis properties.

File set properti mendukung sintaksis yang sama dengan file properti Java; misalnya, file tersebut dapat berisi nilai Unicode dan dapat menggunakan karakter # atau ! sebagai penanda komentar. Perhatikan satu pengecualian ini: Anda tidak dapat menggunakan kurung kurawal {} dalam file set properti.

Anda harus menambahkan akhiran .properties ke nama file properti. Misalnya: myconfig.my_key.properties diizinkan, tetapi myconfig.my_key tidak diizinkan.

Struktur spesifikasi set properti adalah: property_set_name.property_name.properties Nama set properti dan nama properti tidak boleh berisi titik. Misalnya: myconfig.my_key.properties diizinkan, tetapi myconfig.my.key.properties dan my.config.my_key.properties tidak diizinkan.

Contoh berikut menunjukkan file set properti sederhana yang menentukan beberapa properti:

# myProps.properties file
# General properties
foo=bar
baz=biff

# Messages/notes/warnings
message=This is a basic message.
note_message=This is an important message.
error_message=This is an error message.

# Keys
publickey=abc123
privatekey=splitwithsoundman

Setelah membuat file set properti, Anda menguploadnya ke Apigee menggunakan UI atau API.

Mengelola set properti menggunakan UI

Kelola set properti yang dicakup ke revisi proxy API menggunakan UI dengan cara yang sama seperti Anda mengelola resource lainnya. Untuk mengetahui informasi selengkapnya, lihat Mengelola resource menggunakan UI.

Mengelola set properti menggunakan API

Kelola set properti yang dicakup ke revisi atau lingkungan proxy API menggunakan API, seperti yang dijelaskan di bagian berikut.

Membuat set properti menggunakan API

Bagian berikut menjelaskan cara membuat set properti yang dicakup ke revisi atau lingkungan proxy API menggunakan API.

Membuat set properti yang dicakup ke revisi proxy API menggunakan API

Untuk membuat set properti yang dicakup ke revisi proxy API menggunakan API:

  1. Buat file set properti.
  2. Tambahkan file set properti ke paket konfigurasi proxy API.
  3. Upload paket menggunakan Create API proxy atau Update API proxy revision API.

Membuat set properti yang dicakup ke lingkungan menggunakan API

Untuk menambahkan set properti yang dicakup ke lingkungan menggunakan API, buat file set properti, lalu upload ke lingkungan di organisasi Anda dengan mengirimkan permintaan POST ke resource berikut: https://apigee.googleapis.com/v1/organizations/{org}/environments/{env}/resourcefiles

Sertakan informasi berikut dalam permintaan Anda:

  • Tetapkan parameter kueri name ke nama set properti
  • Tetapkan parameter kueri type ke properties
  • Teruskan konten file set properti sebagai application/octet-stream atau multipart/form-data

Contoh berikut mengimpor set properti bernama MyPropSet dari file /Users/myhome/myprops.properties:

curl -X POST "https://apigee.googleapis.com/v1/organizations/my-organization/environments/test/resourcefiles?name=MyPropSet&type=properties"
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-type: multipart/form-data" \
  -F file=@/Users/myhome/myprops.properties
  

$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.

Berikut adalah contoh responsnya.

{
  "name": "MyPropSet",
  "type": "properties"
}

Untuk mengetahui informasi selengkapnya, lihat API file resource pembuatan.

Melihat set properti menggunakan API

Bagian berikut menjelaskan cara melihat set properti yang dicakup ke lingkungan menggunakan API.

Melihat semua set properti yang dicakup ke lingkungan menggunakan API

Untuk melihat semua set properti yang dicakup ke lingkungan menggunakan API, kirim permintaan GET ke resource berikut: https://apigee.googleapis.com/v1/organizations/{org}/environments/{env}/resourcefiles/properties

Contoh berikut mencantumkan semua set properti di lingkungan pengujian:

curl -X GET "https://apigee.googleapis.com/v1/organizations/my-organization/environments/test/resourcefiles/properties" \
  -H "Authorization: Bearer $TOKEN"
  

$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.

Berikut adalah contoh responsnya.

{
  "resourceFile": [
    {
      "name": "MyPropSet",
      "type": "properties"
    }
  ]
}

Untuk mengetahui informasi selengkapnya, lihat List environment resource files API.

Melihat konten set properti yang dicakup ke lingkungan menggunakan API

Untuk melihat konten set properti yang dicakup ke lingkungan menggunakan API, kirim permintaan GET ke resource berikut: https://apigee.googleapis.com/v1/organizations/{org}/environments/{env}/resourcefiles/properties/name

Contoh berikut menampilkan konten properti MyPropSet yang ditetapkan di lingkungan pengujian:

curl -X GET "https://apigee.googleapis.com/v1/organizations/my-organization/environments/test/resourcefiles/properties/MyPropSet" \
  -H "Authorization: Bearer $TOKEN"
  

$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.

Berikut adalah contoh responsnya.

# myProps.properties file
# General properties
foo=bar
baz=biff

# Messages/notes/warnings
message=This is a basic message.
note_message=This is an important message.
error_message=This is an error message.

# Keys
publickey=abc123
privatekey=splitwithsoundman

Untuk mengetahui informasi selengkapnya, lihat List environment resource files API.

Memperbarui set properti menggunakan API

Bagian berikut menjelaskan cara mengupdate set properti yang dicakup ke revisi atau lingkungan proxy API menggunakan API.

Memperbarui set properti yang dicakup ke revisi proxy API menggunakan API

Untuk memperbarui set properti yang dicakup ke revisi proxy API menggunakan API:

  1. Perbarui file set properti.
  2. 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
  3. Tambahkan file set properti ke paket konfigurasi proxy API.
  4. Upload paket konfigurasi proxy API menggunakan API Perbarui revisi proxy API.

Memperbarui set properti yang dicakup ke lingkungan menggunakan API

Untuk memperbarui set properti yang dicakup ke lingkungan menggunakan API, perbarui file set properti, lalu upload ke lingkungan di organisasi Anda dengan mengirimkan permintaan PUT ke resource berikut: https://apigee.googleapis.com/v1/organizations/{org}/environments/{env}/resourcefiles/{type}/{name}

Sertakan informasi berikut dalam permintaan Anda:

  • Tetapkan {type} ke properties
  • Tetapkan {name} ke nama set properti yang ingin Anda perbarui
  • Teruskan konten file set properti sebagai application/octet-stream atau multipart/form-data

Contoh berikut memperbarui set properti MyPropSet menggunakan konten file /Users/myhome/myprops-revised.properties:

curl -X PUT "https://apigee.googleapis.com/v1/organizations/my-organization/environments/test/resourcefiles/properties/MyPropSet"
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-type: multipart/form-data" \
  -F file=@/Users/myhome/myprops-revised.properties
  

$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.

Berikut adalah contoh responsnya.

{
  "name": "MyPropSet",
  "type": "properties"
}

Untuk mengetahui informasi selengkapnya, lihat Update resource file API.

Menghapus set properti menggunakan API

Bagian berikut menjelaskan cara menghapus set properti yang dicakup ke revisi atau lingkungan proxy API menggunakan API.

Menghapus set properti yang dicakup ke revisi proxy API menggunakan API

Untuk menghapus set properti 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. Hapus file set properti dari paket konfigurasi proxy API.
  3. Upload paket konfigurasi proxy API menggunakan API Perbarui revisi proxy API.

Menghapus set properti yang dicakup ke lingkungan menggunakan API

Untuk menghapus set properti yang tercakup ke lingkungan menggunakan API, kirim permintaan DELETE ke resource berikut: https://apigee.googleapis.com/v1/organizations/{org}/environments/{env}/resourcefiles/{type}/{name}

Teruskan informasi berikut dengan permintaan Anda:

  • Tetapkan {type} ke properties
  • Tetapkan {name} ke nama set properti yang ingin Anda hapus

Contoh berikut menghapus set properti MyPropSet:

curl -X DELETE https://apigee.googleapis.com/v1/organizations/my-organization/environments/test/resourcefiles/properties/MyPropSet \
  -H "Authorization: Bearer $TOKEN"
  

$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.

Berikut adalah contoh responsnya.

{
  "name": "MyPropSet",
  "type": "properties"
}

Untuk mengetahui informasi selengkapnya, lihat API file resource penghapusan.

Mengakses nilai set properti

Akses nilai set properti di mana saja dalam proxy API tempat Anda dapat mengakses variabel alur: dalam kebijakan, alur, kode JavaScript, dan sebagainya.

Untuk mengakses nilai dalam set properti, gunakan sintaksis berikut:

propertyset.[property_set_name].[property_name]

Dengan:

  • property_set_name adalah nama file yang Anda tentukan (jika Anda menggunakan UI) atau nilai parameter kueri name (jika Anda menggunakan API).
  • property_name adalah nama properti. Misalnya, jika set properti Anda berisi foo=bar, foo adalah nama properti dan bar adalah nilainya.

Misalnya, dalam kebijakan JavaScript, gunakan metode getVariable() untuk mendapatkan nilai dari set properti:

context.getVariable('propertyset.property_set_name.property_name);

Contoh berikut mendapatkan nilai properti foo dalam set properti bernama "MyPropSet":

context.getVariable('propertyset.MyPropSet.foo);

Anda juga dapat menggunakan kebijakan ExtractVariables untuk mendapatkan nilai properti dari set properti dan menetapkannya ke variabel lain, seperti yang ditunjukkan contoh berikut:

<ExtractVariables name="ExtractVariables-1">
   <DisplayName>Extract a portion of the url path</DisplayName>
   <Source>request</Source>
   <Variable name="propertyset.MyPropSet.foo">
      <Pattern>{myVar}</Pattern>
   </Variable>
   <VariablePrefix>foobar</VariablePrefix>
   <IgnoreUnresolvedVariables>true</IgnoreUnresolvedVariables>
</ExtractVariables>

Dalam contoh ini, kebijakan membaca variabel dari atribut name, dan menetapkan nilai ke variabel dalam elemen Pattern.

Tetapkan nilai kunci set properti secara dinamis menggunakan kebijakan Tetapkan Pesan

Anda dapat menggunakan kebijakan Tetapkan Pesan untuk menetapkan nilai kunci set properti ke variabel alur secara dinamis. Untuk mengetahui detailnya, lihat deskripsi PropertySetRef di referensi kebijakan Tetapkan Pesan.

Untuk pengguna Apigee Hybrid

Jika Anda menggunakan Apigee Hybrid, perhatikan hal berikut:

  1. Bidang pengelolaan hybrid memvalidasi set properti; jika valid, properti akan disimpan di bidang pengelolaan.
  2. Synchronizer mengambil data set properti dan menyimpannya secara lokal di bidang runtime.
  3. Pemroses Pesan memuat set properti yang didownload dan menyediakannya untuk menjalankan proxy.