跳至主要内容

filebase64 函数

filebase64 读取给定路径下文件的內容,并将其作为 Base64 编码的字符串返回。

代码块
filebase64(path)

结果是给定文件中原始字节的 Base64 表示形式。OpenTofu 语言中的字符串是 Unicode 字符序列,因此 Base64 是表示无法解释为 Unicode 字符的原始二进制数据的标准方法。对二进制数据进行操作的资源类型将接受以 Base64 编码的数据,从而避免需要解码此函数的结果。

OpenTofu 使用 RFC 4648 第 4 节 中定义的“标准”Base64 字母表。

此函数只能与在 OpenTofu 运行开始时已作为磁盘上的静态文件存在的函数一起使用。语言函数不参与依赖关系图,因此此函数不能与在 OpenTofu 操作期间动态生成的文

示例

代码块
> filebase64("${path.module}/hello.txt")
SGVsbG8gV29ybGQ=
  • file 也读取给定文件的內容,但将数据解释为 UTF-8 文本,并将结果直接作为字符串返回,无需任何进一步的编码。
  • base64decode 可以解码表示 UTF-8 中字节的 Base64 字符串,但在实践中,base64decode(filebase64(...)) 等效于较短的表达式 file(...)