Version: 2.8.1
Request Termination
用途說明#
此插件會終止所有請求並回傳指定的狀態碼和訊息。其允許(暫時)暫停服務或路由的流量,甚至可以阻擋用戶的請求。
欄位配置說明#
| 變數 | 類型 | 預設值 | 說明 | 必填 |
|---|---|---|---|---|
| status_code | number | 503 | 要送出的狀態碼。 可填入的數值的範圍為 100 至 599。 | |
| message | string | 要送出的訊息(假設使用預設的回應產生器)。 | ||
| body | string | 要送出的 raw response body 。 此欄位與 message 為互斥欄位。 | ||
| content_type | string | raw response 的 content type。 | ||
| echo | boolean | false | 設置後,插件會將請求的副本回給客戶端。 主要的 usecase 是 debugging。 它可以與 trigger 結合使用,以便在不干擾實際流量的情況下 debug 線上系統的請求。 | V |
| trigger | string | 未設置時,插件始終啟用。 當設置為文字串 (string) 時,插件將僅在包含名為該字符串的標頭或查詢參數的請求上啟用。 |
用法示例#
在全局啟用插件#
- 從網站左邊 Menu 中
外掛插件頁面中,點選右上角的新增外掛插件:

- 點選後,選擇
流量控管頁籤,並啟用 Request Termination,填寫內容參考欄位配置說明,設定成功後,任何請求(不分服務、路由、用戶)皆會被阻擋。
在服務端上啟用插件#
- 從網站左邊 Menu 中
服務 > 服務列表頁面中,選擇要啟用此插件的服務,假設為google,點選對應的編輯按鈕:

- 在編輯畫面中,點選上方的
外掛插件頁籤,再點選頁籤內容上方的新增外掛插件按鈕:

點選後,選擇 流量控管 頁籤,並啟用 Request Termination,填寫內容參考欄位配置說明,設定成功後,僅有此服務(範例為google)請求會被阻擋。
在路由端上啟用插件#
可以由兩種方式來選擇路由,並啟用插件:
方式一:路由列表#
- 從網站左邊 Menu 中
服務 > 路由列表頁面中,選擇要啟用此插件的路由,假設為google,點選對應的編輯按鈕:

方式二:服務 > 服務列表 > 路由列表#
- 從網站左邊 Menu 中
服務 > 服務列表頁面中,選擇要啟用此插件的路由 所屬之服務(假設為google),點選對應的編輯按鈕。
在編輯畫面中,點選上方的 路由 頁籤,選擇要啟用此插件的路由(假設為 google),點選對應的編輯按鈕:

- 承第1步,點擊上述兩種方式之一的編輯按鈕後,在編輯畫面中,點選上方的
外掛插件頁籤,再點選頁籤內容上方的新增外掛插件按鈕:

點選新增外掛插件 按鈕後,選擇 流量控管 頁籤,並啟用 Request Termination,填寫內容參考欄位配置說明,設定成功後,僅有此路由(範例為google)請求會被阻擋。
在用戶端上啟用插件#
- 從網站左邊 Menu 中
訂閱用戶 > 用戶列表頁面中,選擇要啟用此插件的用戶,假設為portaladmin,點選對應的編輯按鈕 :

- 在編輯畫面中,點選上方的
外掛插件頁籤,再點選頁籤內容上方的新增外掛插件按鈕:

點選後,選擇 流量控管 頁籤,並啟用 Request Termination,填寫內容參考欄位配置說明,設定成功後,僅有此用戶(範例為 portaladmin)請求會被阻擋。
驗證#
於某個路由新增插件,並填入設定值。此範例在 status_code 及 message 相繼填入 503 以及 The service is under maintenance now.

新增插件後,送出請求(匹配該路由)會得到以下回應: