Halaman ini berlaku untuk Apigee dan Apigee hybrid.
Lihat dokumentasi Apigee Edge.
Menambahkan kemampuan berbasis kebijakan ke proxy API adalah proses dua langkah:
- Mengonfigurasi instance jenis kebijakan.
- Lampirkan instance kebijakan ke Flow.
Diagram di bawah menunjukkan hubungan antara kebijakan dan alur. Seperti yang dapat Anda lihat, kebijakan dilampirkan ke alur sebagai langkah pemrosesan. Untuk mengonfigurasi perilaku yang diinginkan untuk API, Anda perlu memahami alur sedikit. (Topik ini telah dibahas sebelumnya di Mengonfigurasi alur.)
Salah satu jenis kebijakan yang biasa digunakan adalah kebijakan SpikeArrest. SpikeArrest mencegah peningkatan mendadak traffic pesan yang dapat membanjiri layanan backend Anda.
Melampirkan kebijakan ke alur
Editor Proxy Baru
Untuk melampirkan kebijakan ke flow:
- Pilih proxy API, lalu buka tampilan Develop.
- Di panel kiri, klik tombol + di baris Policies.
Pada dialog Create policy, klik di kolom Select policy type, lalu scroll ke bawah ke Traffic Management dan pilih SpikeArrest.
Jika ingin, Anda dapat mengubah Nama tampilan dan Nama kebijakan.
Setelah selesai, klik Buat untuk membuat kebijakan.
- Setelah membuat kebijakan Spike Arrest, Anda dapat melampirkan kebijakan tersebut ke langkah dalam PreFlow. Untuk melakukannya, pilih Endpoint Proxy > default > PreFlow di panel kiri:
- Klik tombol + di samping PreFlow di panel Response di kanan bawah Editor Visual:
- Di dialog Langkah menambahkan kebijakan, pilih kebijakan Spike Arrest.
Klik Tambahkan untuk melampirkan kebijakan.
Kebijakan Spike Arrest kini ditampilkan di panel Response:
Kode XML berikut untuk proxy ditampilkan di editor teks:
<ProxyEndpoint name="default"> <PreFlow name="PreFlow"> <Request/> <Response> <Step>< <Name>SA-</Name> </Step> </Response> </PreFlow> <Flows/> <PostFlow name="PostFlow"> <Request/> <Response/> </PostFlow> <HTTPProxyConnection> <BasePath>/myproxy</BasePath> </HTTPProxyConnection> <RouteRule name="default"> <TargetEndpoint>default</TargetEndpoint> </RouteRule> </ProxyEndpoint>
Detaching policies from a flow
To detach a policy from a flow, click the three-dot menu next to the flow and select Delete policy step
Classic Proxy Editor
To attach a policy to a flow:
- Select an API proxy and navigate to the Develop view.
- In the API Proxy Editor, select the flow to which you want to attach a policy in the
Navigator pane.
For example, the PreFlow flow is selected for the default API proxy endpoint in the following figure:
- In the Design view, click +Step associated with the request or response
flow to attach a policy. For example:
The Add Step dialog opens displaying a categorized list of policies.
- Scroll and select the policy type that you want to attach to the selected flow.
- Modify the following fields.
-
Display Name: Unique display name for the policy. The UI will generate a default name, but it is advisable to create a descriptive name for the policy. This will ensure that other developers in your organization have an easy time understanding what the policy is intended to do.
-
Name: Unique name for the policy. The policy name matches the display name with the following exceptions:
-
Spaces are replaced by dashes.
-
Consecutive dashes are replaced by a single dash.
-
Except for dashes, underscores, and spaces (which are replaced, as noted above), characters that are not alphanumeric, such as pound signs, percent signs, ampersands, and so on, are removed.
-
-
- Click Add.
The policy is attached to the selected flow.
After the policy is attached, you’ll see the policy displayed in the Designer view for the flow, in this example the PreFlow of the default proxy endpoint, and in the Policies list in the Navigation pane. The Code view, which displays the XML for the newly attached policy, displays below the Designer view. Apigee generates an instance of the policy that contains a set of reasonable default values.
Adding a policy without attaching it to a flow
To add a policy without attaching it to a flow, which is useful for Handling faults, click + in the Policies bar in the Navigator view to open the Add Policy dialog and add the policy (as described in steps 4 through 6 in the previous section).
A policy that is not attached to any flow is flagged with the detached icon in the Policies list, as shown adjacent to the API key message policy shown in the previous figure.
After you create the policy, you can attach it to a flow by dragging and dropping it from the Policies list to the desired flow in the Designer view.
Detaching policies from a flow
To detach a policy from a Flow, select the Flow. Mouse over the icon for the policy in the Designer view of the Flow. Click the X in the circle that appears in the icon.
Deleting a policy instance
To delete a policy instance, mouse over the entry for the policy in the Navigator view. Click the X in the circle that appears to the right of the entry.
Configuring policies in the UI
When the UI generates a policy instance, it applies reasonable default values for common settings. You may need to modify these settings to meet your requirements.
For example:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <SpikeArrest async="false" continueOnError="false" enabled="true" name="spikearrest-1"> <DisplayName>SpikeArrest-1</DisplayName> <FaultRules/> <Properties/> <Identifier ref="request.header.some-header-name"/> <MessageWeight ref="request.header.weight"/> <Rate>30ps</Rate> </SpikeArrest>
Anda dapat mengonfigurasi kebijakan dengan langsung mengedit konfigurasi XML-nya di
tampilan Code. Misalnya, rasio pesan puncak untuk kebijakan Spike Arrest pada awalnya ditetapkan ke 30 pesan per detik. Anda dapat mengubah kapasitas puncak dengan mengubah
nilai elemen <Rate
> dalam XML untuk kebijakan. Untuk mengetahui detail selengkapnya tentang
cara mengonfigurasi kebijakan, lihat
Referensi kebijakan.
Anda juga dapat memotong dan menempelkan kebijakan ke tampilan Code. Ini adalah cara yang bagus untuk menggunakan kembali kebijakan dari contoh yang tersedia di GitHub.
Saat Anda membuat perubahan pada definisi kebijakan di tampilan Kode, perubahan tersebut akan ditampilkan di Property Inspector. Hal sebaliknya juga berlaku — buat perubahan di Property Inspector dan perubahan tersebut akan muncul di XML dalam tampilan Code.
Untuk dokumentasi khusus Kebijakan kuota yang digunakan dalam topik ini, lihat Kebijakan kuota.
Menggunakan kode Gemini Code Assist yang dijelaskan dengan kebijakan
Jika memiliki Gemini Code Assist, Anda dapat menggunakannya untuk memahami kebijakan dan elemen kebijakan secara langsung di UI Apigee di konsol Cloud:
- Saat mengedit kebijakan di tampilan Code, tandai bagian kode kebijakan, seperti elemen atau atribut XML. Anda juga dapat menandai beberapa elemen.
- Klik ikon Gemini Code Assist seperti yang ditunjukkan di bawah. Panel samping menampilkan informasi tentang kebijakan dan elemen yang Anda tandai.