FC組件是一款基於Serverless Devs的阿里雲Function Compute操作工具,通過該工具,您可以直接通過互動式命令使用觸發器相關的API。
前提條件
建立觸發器
命令格式:
sudo s cli fc api CreateTrigger --region <regionid> --access <accessname> --apiVersion <20210406 or 20160815> --path '{"serviceName": "serviceName","functionName": "functionName"}' --body '{"invocationRole": "role","qualifier": "version or alias","sourceArn": "ARN","triggerName": "triggerName","triggerConfig": "triggerconfig","triggerType": "triggertype"}'
參數說明:
(必選)--region string:指定部署資源的地區。
(可選)--access string或-a string:指定使用的密鑰別名。
(可選)--apiVersion:指定API版本。取值包括20210406和20160815。
path
(必選)--serviceName string:指定服務名稱。
(必選)--functionName string:指定函數名稱。
body
(可選)--qualifier string:指定服務的別名或版本。
(必選)--invocationRole string:觸發器調用函數時所需的角色。
(必選)--sourceArn string:觸發事件源的ARN。
(必選)--triggerConfig string:觸發器配置。
(必選)--triggerName string:指定觸發器名稱。
(必選)--triggerType string:指定觸發器類型。觸發器類型支援OSS觸發器、Log Service觸發器、定時觸發器、HTTP觸發器、Tablestore觸發器、CDN事件觸發程序和MNS主題觸發器。
執行樣本:
macOS作業系統或Linux作業系統
sudo s cli fc api CreateTrigger --region cn-hangzhou --access default --path '{"serviceName": "mytest","functionName": "mytest"}' --body '{"triggerName": "mytrigger","triggerConfig": {"payload": "", "cronExpression": "@every 1m", "enable": true},"triggerType": "timer"}'
Windows作業系統
s cli fc api CreateTrigger --region cn-hangzhou --access default --path '{"serviceName": "mytest","functionName": "mytest"}' --body '{"triggerName": "mytrigger","triggerConfig": {\"payload\": \"\", \"cronExpression\": \"@every 1m\", \"enable\": true},"triggerType": "timer"}'
關於建立觸發器的API介面的詳細資料,請參見CreateTrigger。
刪除觸發器
命令格式:
sudo s cli fc api DeleteTrigger --region <regionid> --access <accessname> --apiVersion <20210406 or 20160815> --path '{"serviceName": "serviceName","functionName": "functionName","triggerName": "triggerName"}' --header '{"If-Match": "testName"}'
參數說明:
(必選)--region string:指定部署資源的地區。
(可選)--access string或-a string:指定使用的密鑰別名。
(可選)--apiVersion:指定API版本。取值包括20210406和20160815。
path
(必選)--serviceName string:指定服務名稱。
(必選)--functionName string:指定函數名稱。
(必選)--triggerName string:指定觸發器名稱。
header
(可選)--If-Match string:用於確保實際更改的資源與期望更改的資源一致。
執行樣本:
sudo s cli fc api DeleteTrigger --region cn-hangzhou --access default --path '{"serviceName": "mytest","functionName": "mytest","triggerName": "mytrigger"}'
關於刪除觸發器的API介面的詳細資料,請參見DeleteTrigger。
更新觸發器
命令格式:
sudo s cli fc api UpdateTrigger --region <regionid> --access <accessname> --apiVersion <20210406 or 20160815> --path '{"serviceName": "serviceName","functionName": "functionName","triggerName": "triggerName"}' --body '{"invocationRole": "role","qualifier": "version or alias","triggerConfig": {"payload": "", "cronExpression": "cronExpression", "enable": "true or false"}}' --header '{"If-Match": "test"}'
參數說明:
(必選)--region string:指定部署資源的地區。
(可選)--access string或-a string:指定使用的密鑰別名。
(可選)--apiVersion:指定API版本。取值包括20210406和20160815。
path
(必選)--serviceName string:指定服務名稱。
(必選)--functionName string:指定函數名稱。
(必選)--triggerName string:指定觸發器名稱。
body
(必選)--invocationRole string:觸發器調用函數時所需的角色。
(可選)--qualifier string:指定服務的別名或版本。
(必選)--triggerConfig string:觸發器配置。
header
(可選)--If-Match string:用於確保實際更改的資源與期望更改的資源一致。
執行樣本:
macOS作業系統或Linux作業系統
sudo s cli fc api UpdateTrigger --region cn-hangzhou --access default --path '{"serviceName": "mytest","functionName": "mytest","triggerName": "mytrigger"}' --body '{"triggerConfig": {"payload": "", "cronExpression": "@every 1m", "enable": false}}'
Windows作業系統
s cli fc api UpdateTrigger --region cn-hangzhou --access default --path '{"serviceName": "mytest","functionName": "mytest","triggerName": "mytrigger"}' --body '{"triggerConfig": {\"payload\": \"\", \"cronExpression\": \"@every 1m\", \"enable\": false}}'
關於更新觸發器的API介面的詳細資料,請參見UpdateTrigger。
擷取觸發器配置資訊
命令格式:
sudo s cli fc api GetTrigger --region <regionid> --access <accessName> --apiVersion <20210406 or 20160815> --path '{"serviceName": "serviceName","functionName": "functionName","triggerName": "triggerName"}'
參數說明:
(必選)--region string:指定部署資源的地區。
(可選)--access string或-a string:指定使用的密鑰別名。
(可選)--apiVersion:指定API版本。取值包括20210406和20160815。
path
(必選)--serviceName string:指定服務名稱。
(必選)--functionName string:指定函數名稱。
(必選)--triggerName string:指定觸發器名稱。
執行樣本:
sudo s cli fc api GetTrigger --region cn-hangzhou --access default --path '{"serviceName": "mytest","functionName": "mytest","triggerName": "mytrigger"}'
關於擷取觸發器配置資訊的API介面的詳細資料,請參見GetTrigger。
查詢觸發器列表
命令格式:
sudo s cli fc api ListTriggers --region <regionid> --access <accessname> --apiVersion <20210406 or 20160815> --path '{"serviceName": "serviceName","functionName": "functionName"}' --query '{"limit": "limit","nextToken": "nextToken","prefix": "prefix","startKey": "startKey"}'
參數說明:
(必選)--region string:指定部署資源的地區。
(可選)--access string或-a string:指定使用的密鑰別名。
(可選)--apiVersion:指定API版本。取值包括20210406和20160815。
path
(必選)--serviceName string:指定服務名稱。
(必選)--functionName string:指定函數名稱。
query
(可選)--limit string:設定限定此次返回資源的數量。
(可選)--nextToken string:設定用來返回更多結果的令牌。第一次查詢時不需要提供這個參數,後續查詢的Token從返回結果中擷取。
(可選)--prefix string:設定返回資源的名稱首碼。
(可選)--startKey string:設定結果從startKey之後(包括startKey)按字母排序的第一個開始返回。
執行樣本:
sudo s cli fc api ListTriggers --region cn-hangzhou --access default --path '{"serviceName": "mytest","functionName": "mytest"}'
關於查詢觸發器列表的API介面的詳細資料,請參見ListTriggers。