您好,欢迎来到暴趣科技网。
搜索
您的当前位置:首页AWS Serverless CLI命令参考4--invoke

AWS Serverless CLI命令参考4--invoke

来源:暴趣科技网

invoke

用于调用已部署的lambda函数,可以给lambda函数发送event数据,读取log或者显示其他调用信息。

基本命令

serverless invoke --function functionName

命令参数

--function 

缩写为-f

用于指定调用的lambda函数的名称

--stage

缩写为-s

用于指定部署的stage

--region

缩写为-r

用于指定部署的region

--qualifier

缩写为-q

用于指定调用函数的版本号或者别名,默认为 $LATEST

--data

缩写为-d

用于作为函数event的字符串数据,默认从标准输入中进行读取

--raw

将数据作为string event来调用lambda函数,即便数据是json格式,最终传递给函数的也是string,如果不设置,json数据会被解析为object,最终传递给函数的是对象

--path

缩写为-p

--type

缩写为-t

指定调用类型,可选值为RequestResponseEvent或者DryRun,默认为 RequestResponse.

--log

缩写为-l

如果设置为true且调用类型为RequestResponse, 会输出调用的log数据,默认值为false.

示例

调用指定阶段和区域的已部署的函数

serverless invoke --function functionName --stage dev --region us-east-1

以string data作为输入调用lambda函数

serverless invoke --function functionName --stage dev --region us-east-1 --data "hello world"

以标准输入作为输入调用lambda函数

node dataGenerator.js | serverless invoke --function functionName --stage dev --region us-east-1

显示调用函数的log信息

serverless invoke --function functionName --stage dev --region us-east-1 --log

以json data作为输入调用lambda函数

serverless invoke --function functionName --stage dev --region us-east-1 --path lib/data.json

 data.json

{
  "resource": "/",
  "path": "/",
  "httpMethod": "GET"
  //  etc. //
}

invoke local

本地调用lambda函数用于测试和日志输出,context只能使用简单mock data

只支持ptyhon和nodejs运行时

基本命令

serverless invoke local --function functionName

命令参数

--function 

缩写为-f

用于指定调用的lambda函数的名称

--path

缩写为-p

--data

缩写为-d

用于作为函数event的字符串数据,默认从标准输入中进行读取

--raw

将数据作为string event来调用lambda函数,即便数据是json格式,最终传递给函数的也是string,如果不设置,json数据会被解析为object,最终传递给函数的是对象

--contextPath

缩写为-x

--context

缩写为-c

用于指定作为lambda函数输入context的string data,与--data作用相同,--contextPath指定的context会覆盖该参数指定的string data。

--env

缩写为-e

用于指定调用函数时需要的环境变量,格式为<name>=<value>,可以重复使用指定多个环境变量

--docker

为NodeJS/Python/Ruby/Java运行时启动docker支持,其他运行时默认启用

--docker-arg

与--docker参数合用,用于给docker启动命令指定额外的参数,比如 --docker-arg '-p 9229:9229' --docker-arg '-v /var:/host_var'

--skip-package

 使用.serverless文件夹中的文件,避免在每次调用时重新打包已节省调用时间

示例

自定义data作为输入调用本地函数

serverless invoke local --function functionName --data "hello world"
serverless invoke local --function functionName --data '{"a":"bar"}'

自定义json文件作为输入调用本地函数

serverless invoke local --function functionName --path lib/data.json

自定义context作为输入调用本地函数

serverless invoke local --function functionName --context "hello world"

自定义contextPath作为输入调用本地函数

serverless invoke local --function functionName --contextPath lib/context.json

指定环境变量

serverless invoke local -f functionName -e VAR1=value1

# Or more than one variable

serverless invoke local -f functionName -e VAR1=value1 -e VAR2=value2

参考

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- baoquwan.com 版权所有 湘ICP备2024080961号-7

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务