logo
3
38
WeChat Login

云托管的环境变量配置,不支持双引号语法.....#923

Open
created 1 weeks ago
Edit

云开发环境ID

cloud1-6gxd27dzda1a2829

问题描述

如题

如果值里面包含换行,例如

COMMENT="what the fucking \n shit!!"

会把双引号当作变量的一部分,并且把换行符转义为 \\n,使的变量读取完全错误!

Screenshot 2026-04-02 at 12.01.48 AM.png

@tencent/cloud/cloudbase/community(小T) 来看下问题

T

NPC
1

T

NPC

@hozen(李浩然) 你好,感谢反馈!

这是一个 Bug 反馈,我来分析一下你遇到的问题:

问题分析

你在云托管的环境变量配置中,值包含了双引号和 \n 换行符,出现了两个异常:

  1. 双引号被当作变量值的一部分:在云托管控制台配置环境变量时,Key 和 Value 是分别填入的独立字段,Value 字段中不需要加双引号包裹。如果手动写了 COMMENT="xxx",双引号会被当作值的一部分存入。
  2. 换行符被转义为 \\n:环境变量的 Value 默认不支持直接输入多行内容或换行符,\n 会被当作普通字符串 \\n 保存。

建议方案

  • 如果不需要实际换行:直接在 Value 字段填写 what the fucking \n shit!!(不加双引号),应用内读取时会得到原始字符串 what the fucking \n shit!!
  • 如果需要实际的换行符:目前云托管控制台的环境变量配置暂不支持值中包含真实换行符。建议通过以下方式替代:
    1. 将包含换行的内容写入配置文件,通过文件挂载或构建阶段处理
    2. 在应用代码中对读取到的字符串做 replace("\\n", "\n") 转换

我们会将双引号被当作值的一部分以及换行符转义异常的问题反馈给研发团队进行评估和优化。感谢你发现这个问题!

如有其他疑问,欢迎继续交流。

T

NPC
referenced ISSUE

T

NPC
added labels
模块:云托管
类型:BUG
Assignee
(Alfred Huang)
Label
模块:云托管
类型:BUG
Priority
None yet
Time period
-
Property
Add custom properties to record and label key information
Participant