无服务器检测 运行 本地
Serverless Detect Running Locally
我正在 运行 执行如下命令。
serverless invoke local --function twilio_incoming_call
当我在我的代码中本地 运行 时,我计划检测这一点,而不是寻找 POST 变量寻找我将提供的 MOCK 文件。
不过,我不知道如何使用此本地命令检测我是否 运行ning 无服务器。
你是怎么做到的?
我在无服务器网站上四处寻找,可以找到很多关于 运行ning 在本地的信息,但没有检测到 如果你在本地。
我找到了答案。 process.env.IS_LOCAL
将检测您是否在本地 运行。不知何故在他们的网站上错过了这个...
您还可以查看 process.argv
中的内容:
process.argv[1]
将等于 '/usr/local/bin/sls'
process.argv[2]
等于 'invoke'
process.argv[3]
将等于 'local'
如果您使用的是 AWS Lambda,它有一些 built-in 环境变量。在没有这些变量的情况下,您可以得出结论,您的函数在本地是 运行。
https://docs.aws.amazon.com/lambda/latest/dg/lambda-environment-variables.html
const isRunningLocally = !process.env.AWS_EXECUTION_ENV
无论您使用的是无服务器框架、Apex UP、AWS SAM 等,无论您使用何种框架,此方法都有效
我正在 运行 执行如下命令。
serverless invoke local --function twilio_incoming_call
当我在我的代码中本地 运行 时,我计划检测这一点,而不是寻找 POST 变量寻找我将提供的 MOCK 文件。
不过,我不知道如何使用此本地命令检测我是否 运行ning 无服务器。
你是怎么做到的?
我在无服务器网站上四处寻找,可以找到很多关于 运行ning 在本地的信息,但没有检测到 如果你在本地。
我找到了答案。 process.env.IS_LOCAL
将检测您是否在本地 运行。不知何故在他们的网站上错过了这个...
您还可以查看 process.argv
中的内容:
process.argv[1]
将等于 '/usr/local/bin/sls'
process.argv[2]
等于 'invoke'
process.argv[3]
将等于 'local'
如果您使用的是 AWS Lambda,它有一些 built-in 环境变量。在没有这些变量的情况下,您可以得出结论,您的函数在本地是 运行。
https://docs.aws.amazon.com/lambda/latest/dg/lambda-environment-variables.html
const isRunningLocally = !process.env.AWS_EXECUTION_ENV
无论您使用的是无服务器框架、Apex UP、AWS SAM 等,无论您使用何种框架,此方法都有效