我使用的是dotenv
。
用于从.env
加载环境变量的Ruby gem。
在我的.env
文件中可以有多行变量吗?
例如:
SOMETHING_CERTIFICATE="-----BEGIN CERTIFICATE-----
JSDFALDAFSSKLABVCXZLV2314IH4IHDFG9AYDF9DSSDF82QWEIWFHDSSD8SADF0=
-----END CERTIFICATE-----"
^使用上面的语句只会在中间一行抛出一个错误,就好像它不是字符串的一部分,而我试图创建一个格式不正确的变量。
3条答案
按热度按时间lndjwyie1#
根据文件
多行值
如果您需要多行变数(例如私密密钥),您可以将字串用双引号括起来,并使用\n字符做为新行:
PRIVATE_KEY="-----开始RSA私钥-----\nHkVN9...\n------结束DSA私钥-----\n”
cvxl0en22#
从Brian在上面发布的文档中可以看出:
或者,带引号的值现在支持带换行符的多行值。
所以你在问题中描述的解决方案现在是合法的!
oxcyiej73#
如果使用节点,则可以使用
fixedKey = key.replaceAll('\\n', '\n')
而在.env
KEY=-----BEGIN PRIVATE KEY----- xY=\n.....3ZaWjyKJqy+xY=\n-----END PRIVATE KEY-----\n
如果您正在使用typeScript,请修复在tsconfig.json中为“es2021”更改compilerOptions下的lib选项时出现的错误
replaceAll is not a function
。