Aws lambda 本地运行的无服务器检测
我运行的命令如下所示Aws lambda 本地运行的无服务器检测,aws-lambda,serverless-framework,serverless,Aws Lambda,Serverless Framework,Serverless,我运行的命令如下所示 serverless invoke local --function twilio_incoming_call 当我在代码中本地运行时,我计划检测到这一点,而不是寻找POST变量,而是寻找一个模拟文件,我将给出它 但是,我不知道如何检测是否使用此本地命令运行serverless 您是如何做到这一点的? 我在无服务器网站上四处查看,发现了很多关于在本地运行的信息,但没有检测到您是否在本地。我找到了答案process.env.IS_LOCAL将检测您是否在本地运行。不知何故,
serverless invoke local --function twilio_incoming_call
当我在代码中本地运行时,我计划检测到这一点,而不是寻找POST变量,而是寻找一个模拟文件,我将给出它
但是,我不知道如何检测是否使用此本地命令运行serverless
您是如何做到这一点的?
我在无服务器网站上四处查看,发现了很多关于在本地运行的信息,但没有检测到您是否在本地。我找到了答案
process.env.IS_LOCAL
将检测您是否在本地运行。不知何故,他们的网站上遗漏了这一点…您还可以检查过程中的内容。argv
:
process.argv[1]
将等于“/usr/local/bin/sls”
process.argv[2]
将等于“invoke”
process.argv[3]
将等于“local”如果您使用的是AWS Lambda,它有一些内置的环境变量。在没有这些变量的情况下,您可以断定您的函数正在本地运行
无论您使用的框架是无服务器、Apex UP、AWS SAM等,此方法都可以工作。很好!这是指向无服务器文档的链接:
const isRunningLocally = !process.env.AWS_EXECUTION_ENV