跳转至

脚本开发 / 环境变量 DFF.ENV

在脚本编辑器左侧边栏配置的环境变量,可以在 Script 中使用其 ID 读取。

API

方法 说明
DFF.ENV(key, default=None) 读取环境变量;不存在时返回 default
DFF.ENV.get(key, default=None) 与直接调用 DFF.ENV(...) 等价
DFF.ENV.keys() 返回可用环境变量的 ID 列表
DFF.ENV.ref(key, default=None) 为支持动态取值的 DFF.API 参数创建延迟引用
示例
1
2
3
company_name = DFF.ENV('companyName')
page_size = DFF.ENV('pageSize', default=10)
all_keys = DFF.ENV.keys()

找不到环境变量时返回 default,未传入默认值时返回 Nonepassword 类型的环境变量会自动解密;配置了类型转换时,会返回转换后的 Python 值。配置错误可能导致类型转换抛出异常,因此读取可选变量时应提供默认值或兜底逻辑。

带类型兜底的示例
1
2
3
4
5
def get_page_size():
    try:
        return int(DFF.ENV('pageSize', default=10) or 10)
    except Exception:
        return 10

动态引用

DFF.ENV.ref(...) 返回的是动态引用,而不是当前环境变量值。引用会在消费 Func 元数据时解析,可用于 DFF.APIdelayed_cron_jobtimeoutexpiresqueue 参数。

示例
1
2
3
@DFF.API('动态超时', timeout=DFF.ENV.ref('FUNC_TIMEOUT', default=35))
def dynamic_timeout():
    return 'ok'

连接地址、Token、密码和环境差异配置应优先存放在环境变量中,不要硬编码在 Script 内,也不要通过 print(...) 或 Func 响应输出敏感值。