无服务器检测本地运行

时间:2018-01-15 00:50:22

标签: serverless-framework serverless

我正在运行如下命令。

serverless invoke local --function twilio_incoming_call

当我在我的代码中本地运行时,我计划检测到这一点,而不是寻找POST变量,而是查找我将提供的MOCK文件。

我不知道如何检测我是否使用此本地命令运行无服务器。

你是怎么做到的?

我在无服务器网站上环顾四周,可以找到很多关于在本地运行的信息,但如果你在本地,则无法检测

3 个答案:

答案 0 :(得分:2)

我找到了答案。 process.env.IS_LOCAL将检测您是否在本地运行。错误地在他们的网站上错过了......

答案 1 :(得分:1)

您还可以查看process.argv中的内容:

process.argv[1]将等于'/ usr / local / bin / sls'

process.argv[2]将等于'调用'

process.argv[3]将等于'local'

答案 2 :(得分:0)

如果您使用的是AWS Lambda,它具有一些内置环境变量。在没有这些变量的情况下,您可以得出结论,您的函数正在本地运行。

https://docs.aws.amazon.com/lambda/latest/dg/lambda-environment-variables.html

const isRunningLocally = !process.env.AWS_EXECUTION_ENV