我需要从环境变量中获取包含多个值的列表。 像这样的东西:

List:
    Field1: Value 1
    Field2: Value 2
    Field3: Value 3

我正在考虑用这样的值定义一个 env 变量:

MY_ENV_VAR = 1:3:43,5:7:9,9:65:12

然后用Java解析它:

class ParseObject {
   Integer field1;
   Integer field2;
   Integer field3;
}

List<ParseObject> parseObjects;
parseObjects[0].getField1(); // 1
parseObjects[0].getField2(); // 3
parseObjects[0].getField3(); // 43 

parseObjects[1].getField1(); // 5
parseObjects[1].getField2(); // 7
parseObjects[1].getField3(); // 9

parseObjects[2].getField1(); // 9
parseObjects[2].getField2(); // 65
parseObjects[2].getField3(); // 12

解析这个的方法是使用正则表达式。 你喜欢这种方法吗? 还有其他想法吗? 谢谢

#1楼 票数:0

环境变量用于配置:指定如何完成执行的东西,例如输入/输出位置、默认语言设置等。它们不适用于数据:可能任意大小的东西对于环境变量来说并不理想 - 甚至您必须问的问题的范围: “env 字符串的最大长度是多少?”

在上面的代码中, MY_ENV_VAR = 1:3:43,5:7:9,9:65:12看起来像数据。 我会认真考虑是否是这种情况。 如果是,请考虑在调用 lambda 时将其作为函数参数传递。 如果这不起作用,您还可以将值1:3:43,5:7:9,9:65:12写入 S3 中的文件,并将该文件的位置作为 env 变量传递。

如果变量实际上是配置,并且它始终是三项内容的列表,每项包含三个数字,我至少会将它分成三个不同的环境变量,每个变量都有一个描述性名称(即使它只是 1、2、等),因此您没有单个嵌套的 env 变量。

  ask by Julio translate from so

未解决问题?本站智能推荐:

1回复

有没有办法在 aws lambda 层中定义公共环境变量?

我使用无服务器框架,并且我有多个共享同一层的 aws node.js lambda。 我想为所有这些定义一个 ENV 变量 - 有没有办法将该公共 ENV 变量放入层的serverless.yml ? 还是我必须将它分别放在每个serverles.yml文件中?
1回复

如何在 AWS Lambda 中设置环境变量或使用即时客户端库

当使用连接到 Oracle RDS 的 NodeJS 函数时,我收到错误消息: DPI-1047:无法加载 64 位 Oracle 客户端库:“libaio.so.1:无法打开共享对象文件:没有这样的文件或目录 我遵循这个部署包结构:
1回复

解密多个环境。 变量nodejs-AWS Lambda

我在解密AWS Lambda的nodejs中的多个环境变量时遇到困难。 我看了控制台中提供的代码示例以及以下两个相关问题: 问题1 , 问题2 我已经能够通过其代码示例成功解密单个环境变量,但是,当我尝试通过使用Promise(上述问题中概述的方法)应用更简洁的方法时,在测试Lam
2回复

将值配置为用Java编写的AWS Lambda

我的要求是,我需要编写一个AWS Lambda函数,该函数需要进行一些处理,然后调用URL。 这些URL非常容易在各个堆栈中使用。 因此,在堆栈1 Lambda中,URL可以为http://do-something.com,而在堆栈2中,URL可以为http://do-nothing.c
1回复

AWS Lambda Java函数多次调用

我有一个AWS Lambda函数,我用Java编写(好吧,它实际上是用Clojure编写的),每次运行它时都会被调用3次。 我的函数在超时(设置为最多5分钟)内成功运行。 当我在控制台中测试函数时,它返回一个我可以看到输出的字符串。 我在网上看到过一些关于不得不调用一些Contex
1回复

如何在Java中的AWS Lambda中获取HTTP方法?

在AWS Lambda Java代码中,如何获取来自AWS Gateway API的HTTP请求的HTTP方法(例如GET,POST ...)?
1回复

AWS Lambda 上的 ASP.NET Core - 数据保护密钥存储为环境变量

NET Core Web 服务,托管在 AWS Lambda 上,需要内置 Cookie 身份验证。 因此,我需要在多个 lambda 实例之间共享数据保护密钥。 我想将密钥保存为 Lambda 中的环境变量或通过 AWS Secrets Manager(或它的确切名称) 我可以将数据保护配置
2回复

AWS Lambda环境变量

当通过aws-lambda控制台将环境变量添加到aws-lambda时,我可以使用以下命令引用这些变量: 如何在cloudformation模板的aws-lambda中使用环境变量? 我不想在aws-lambda控制台中声明环境变量。 谢谢