为了账号安全,请及时绑定邮箱和手机立即绑定

Java AWS 无服务器框架设置下如何确定 Lambda 是在本地运行还是在 AWS 下运行

Java AWS 无服务器框架设置下如何确定 Lambda 是在本地运行还是在 AWS 下运行

森栏 2021-09-29 15:05:41
我正在使用 AWS SAM Java 无服务器应用程序。我正在使用 Eclipse AWS 无服务器插件来创建简单的基于 Dynamo DB 的 CRUD 应用程序。应用程序接受一个 http 请求,并根据 HTTP 方法在 DynamoDB 上尝试相应的 CRUD 操作。所以一切都很好,除了我无法弄清楚如何将环境变量或属性文件传递给我的 Lambda java 代码以确定 lambda 是在本地运行还是在 AWS 环境中运行。取决于我想使用本地 Dynamo DB 客户端或 AWS DB 客户端。这是代码片段:    String environment = System.getenv("profile");    AmazonDynamoDB dynamoDBclient = null;    if("local".equalsIgnoreCase(environment)) {        dynamoDBclient = AmazonDynamoDBClientBuilder.standard().withEndpointConfiguration(                new AwsClientBuilder.EndpointConfiguration("http://172.16.123.1:8000", "local"))                .build();     } else {        dynamoDBclient = AmazonDynamoDBClientBuilder.standard().build();    }    dynamoDBMapper = new DynamoDBMapper(dynamoDBclient);试图弄清楚如何传递这个环境变量“配置文件”。在 SAM 本地运行/调试配置中,我没有看到任何选项可以做到这一点。
查看完整描述

1 回答

?
守着星空守着你

TA贡献1799条经验 获得超8个赞

您应该能够依靠AWS_SAM_LOCAL=true这一承诺


查看完整回答
反对 回复 2021-09-29
  • 1 回答
  • 0 关注
  • 174 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信