1. 程式人生 > >GoKu API Gateway CE配置檔案

GoKu API Gateway CE配置檔案

配置檔案

1.GoKu擁有一個主配置檔案 goku.conf ,GoKu可以新建多個閘道器,每個閘道器一個資料夾。
2.GoKu的配置檔案採用 yaml 格式:

  • 大小寫敏感。
  • 使用縮排表示層級關係,縮排時不允許使用Tab鍵,只允許使用空格。
  • 縮排的空格數無關,只需相同層級的元素左側對齊即可。

3.修改配置檔案後,重啟閘道器以使其生效
4.配置檔案的層級關係如下圖所示:

這裡寫圖片描述

引數欄位表

一、goku.conf

引數名 說明 必填 型別 示例 備註
host 閘道器地址 string 192.168.21.222
port 埠號 string 8800
gateway_conf_path 閘道器所在路徑 string ./config/gateway

二、gateway.conf

引數名 說明 必填 型別 示例 備註
gateway_name 閘道器名稱 string GoKu
gateway_alias 閘道器別名 string goku 用於拼接閘道器請求地址
gateway_status 閘道器狀態 string on on/off
ip_limit_type 開啟ip黑白名單 string none 可取值:none/white/black
ip_white_list ip白名單 []string 列表
ip_black_list ip黑名單 []string 列表
strategy_conf_path 策略組所在路徑 string ./config/gateway/hm/strategy.conf
api_group_conf_path API分組所在路徑 string ./config/gateway/hm/api_group.conf
api_conf_path API所在路徑 string ./config/gateway/hm/api.conf

三、backend.conf

引數名 說明 必填 型別 示例 備註
backend_id 後端服務id int 1 不可重複
backend_name 後端服務名稱 string 開放介面
backend_path 後端服務路徑 string https://api.apishop.net 不可重複

四、strategy.conf

引數名 說明 必填 型別 示例 備註
strategy_name 策略組名稱 string OpenAPI
strategy_id 策略組id string sjdkjs 隨機字串,不可重複
auth 鑑權方式 string apikey 可取值:none/basic/apikey
api_key 用於apikey鑑權方式 string fd9befe929399f09c393
basic_user_name basic 使用者名稱 string 123
basic_user_password basic密碼 string 123
ip_limit_type 開啟ip黑白名單 string none 可取值:none/white/black
ip_white_list ip白名單 []string 列表
ip_black_list ip黑名單 []string 列表
rate_limit_list 流量控制 []string 列表
allow 是否允許訪問 bool true true/false
priority 流控優先順序 int 999 流控執行優先順序:0~999
start_time 流控開始時間 int 6 0~24
end_time 流控結束時間 int 22 0~24
period 流控單位 string min 可取值:sec/min/hour/day
limit 限流次數 int 1000

五、api_group.conf

引數名 說明 必填 型別 示例 備註
group_id api分組 id int 2 不可重複
group_name api分組名稱 string 通用介面

六、api.conf

引數名 說明 必填 型別 示例 備註
api_name 引數名 string 查詢全國油價
group_id 所屬分組 int 0 0代表無分組
backend_id 對應後端服務 int 1
request_method 閘道器請求方式 string post 陣列,可取值:get/post/put/delete/options/patch/head
request_url 閘道器請求路徑 string /common/oil/getOilPriceToday
proxy_method 後端請求方式 string post 非陣列,可取值:get/post/put/delete/options/patch/head
proxy_url 後端請求路徑 string /common/oil/getOilPriceToday
proxy_body_type body型別 string formdata 可取值:formdata/raw/json
porxy_body raw資料 string
proxy_params 請求引數對映 列表
key 閘道器引數名 string province
key_position 閘道器引數位置 string body 可取值:header/body/query,當為raw資料時body不可取
not_empty 是否必填 bool
proxy_key 後端引數名 string province
proxy_key_position 後端引數位置 string body 可取值:header/body/query,當為raw資料時body不可取
constant_params 常量引數 列表
key 引數名 string apiKey
position 引數位置 string body 可取值:header/body/query,當為raw資料時body不可取
value 引數值 string 9399f09c393fd9befe92

想了解更多國內首款GO語言閘道器資訊,請留意:https://agw.eolinker.com,或者關注本部落格,部落格將會及時更新eoLinker最新資訊。