Menggunakan kumpulan properti

Halaman ini berlaku untuk Apigee dan Apigee Hybrid.

Lihat dokumentasi Apigee Edge.

Kumpulan properti adalah kumpulan kustom key-value pair yang menyimpan data. Proxy API dapat mengambil data ini saat dieksekusi.

Mengapa menggunakan kumpulan properti?

Biasanya, Anda menggunakan set properti untuk menyimpan data yang belum habis masa berlakunya yang tidak boleh di-hard code dalam logika proxy API Anda. Anda dapat mengakses data set properti di mana saja di proxy tempat Anda dapat mengakses variabel flow.

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

Contoh:

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

Demikian pula, Anda dapat menyimpan informasi perutean spesifik lingkungan:

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

Cakupan kumpulan properti

Anda dapat menentukan cakupan properti yang ditetapkan ke revisi atau lingkungan proxy API saat membuat kumpulan properti. Anda tidak dapat mencakup properti yang ditetapkan 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 kumpulan properti. Tidak ada proxy API lain atau revisi dari proxy yang sama yang dapat mengakses properti tertentu yang ditetapkan. Administrator dapat menggunakan Apigee API /resourcefiles atau UI-nya untuk membuat dan mengedit kumpulan properti. Menyimpan proxy API di UI akan membuat revisi baru, dan kumpulan 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 kumpulan properti tersebut. Administrator harus menggunakan Apigee API /resourcefiles untuk membuat, melihat, mengupdate, atau menghapus set properti cakupan lingkungan. Kumpulan properti ini tidak ditampilkan dan tidak dapat diedit di UI Apigee.

Batas yang ditetapkan properti

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

Membuat file kumpulan properti

Biasanya, Anda menyimpan nilai yang ditetapkan properti sebagai pasangan nama/nilai dalam file. File kumpulan properti adalah file resource jenis properties.

File kumpulan properti mendukung sintaksis yang sama seperti 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 tanda kurung kurawal {} dalam file kumpulan properti.

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

Struktur spesifikasi kumpulan properti adalah: property_set_name.property_name.properties Nama kumpulan 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 menampilkan file kumpulan 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 kumpulan properti, Anda menguploadnya ke Apigee menggunakan UI atau API.

Mengelola kumpulan properti menggunakan UI

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

Mengelola kumpulan properti menggunakan API

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

Membuat kumpulan properti menggunakan API

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

Membuat set properti yang dicakupkan ke revisi proxy API menggunakan API

Untuk membuat kumpulan properti yang dicakupkan ke revisi proxy API menggunakan API:

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

Membuat kumpulan properti yang dicakupkan ke lingkungan menggunakan API

Untuk menambahkan kumpulan properti yang dicakupkan ke lingkungan menggunakan API, buat file kumpulan properti, lalu upload ke lingkungan di organisasi Anda dengan mengeluarkan 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 kumpulan properti sebagai application/octet-stream atau multipart/form-data

Contoh berikut mengimpor kumpulan 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 Membuat API file resource.

Melihat kumpulan properti menggunakan API

Bagian berikut menjelaskan cara melihat kumpulan properti yang dicakupkan ke lingkungan menggunakan API.

Melihat semua kumpulan properti yang dicakupkan ke lingkungan yang menggunakan API

Untuk melihat semua kumpulan properti yang dicakupkan ke lingkungan menggunakan API, berikan 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 Mencantumkan API file resource lingkungan.

Melihat konten properti yang ditetapkan ke lingkungan menggunakan API

Untuk melihat konten properti yang ditetapkan ke lingkungan menggunakan API, berikan 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 Mencantumkan API file resource lingkungan.

Memperbarui kumpulan properti menggunakan API

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

Mengupdate kumpulan properti yang dicakupkan ke revisi proxy API menggunakan API

Untuk mengupdate kumpulan properti yang dicakupkan ke revisi proxy API menggunakan API:

  1. Perbarui file kumpulan properti.
  2. Download paket konfigurasi proxy API menggunakan Get API proxy Revision API dengan opsi berikut:
    • Tetapkan parameter kueri format ke bundle
    • Setel header Accept ke application/zip
  3. Tambahkan file set properti ke paket konfigurasi proxy API.
  4. Upload paket konfigurasi proxy API menggunakan API Update proxy proxy Tambahkan API.

Memperbarui kumpulan properti yang dicakupkan ke lingkungan menggunakan API

Untuk memperbarui kumpulan properti yang dicakupkan ke lingkungan menggunakan API, perbarui file kumpulan properti, lalu upload ke lingkungan di organisasi Anda dengan mengeluarkan 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 kumpulan properti yang ingin Anda perbarui
  • Teruskan konten file kumpulan properti sebagai application/octet-stream atau multipart/form-data

Contoh berikut memperbarui properti MyPropSet yang ditetapkan menggunakan isi 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 Mengupdate API file resource.

Menghapus kumpulan properti menggunakan API

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

Menghapus kumpulan properti yang dicakupkan ke revisi proxy API menggunakan API

Untuk menghapus kumpulan properti yang dicakupkan 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
    • Setel header Accept ke application/zip
  2. Hapus file kumpulan properti dari paket konfigurasi proxy API.
  3. Upload paket konfigurasi proxy API menggunakan API Update proxy proxy Tambahkan API.

Menghapus kumpulan properti yang dicakupkan ke lingkungan menggunakan API

Untuk menghapus kumpulan properti yang dicakupkan ke lingkungan menggunakan API, berikan 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 kumpulan properti yang ingin Anda hapus

Contoh berikut menghapus kumpulan 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 informasi selengkapnya, lihat Menghapus API file resource.

Mengakses nilai kumpulan properti

Akses nilai yang ditetapkan properti di mana saja di proxy API tempat Anda dapat mengakses variabel flow: di kebijakan, flow, kode JavaScript, dan sebagainya.

Untuk mengakses nilai di kumpulan properti, gunakan sintaksis berikut:

propertyset.[property_set_name].[property_name]

Dengan keterangan:

  • 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 kumpulan properti Anda berisi foo=bar, foo adalah nama properti dan bar adalah nilainya.

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

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

Contoh berikut adalah nilai properti foo di kumpulan properti yang bernama "MyPropSet":

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

Anda juga dapat menggunakan kebijakan ExtractVariables untuk mendapatkan nilai properti dari kumpulan properti dan menetapkannya ke variabel lain, seperti yang ditampilkan dalam 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 tersebut 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 flow secara dinamis. Untuk mengetahui detailnya, lihat deskripsi PropertySetRef dalam referensi kebijakan Menetapkan Pesan.

Untuk pengguna Apigee Hybrid

Jika Anda menggunakan Apigee Hybrid, perhatikan hal-hal berikut:

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