模板渲染

模板渲染

使用 Liquid 模板和 JSON 变量在线生成文本,支持变量、条件、循环和过滤器,并可保存模板以便重复使用。

模板
变量 JSON
结果
说明

使用 Liquid 模板和 JSON 变量在线生成文本,支持变量、条件、循环和过滤器,并可保存模板以便重复使用。

查看常见用法与问题
样板和历史记录
  • 保存模板后,可以把当前变量 JSON 保存为该模板的样板;每个模板只保留一个样板。
  • 点击“填入样板”会优先使用已保存样板,没有样板时使用模板默认示例。
  • 只有已保存模板的生成会进入历史记录;未保存的临时草稿生成后不会写入历史记录。
  • 从历史记录恢复时会使用当前模板内容和当时的变量 JSON。
常用语法
  • 输出变量:`{{ api.name }}`
  • 设置默认值:`{{ api.method | default: "GET" }}`
  • 条件输出:`{% if api.auth %}需要鉴权{% endif %}`
  • 列表循环:`{% for item in cases %}...{% endfor %}`
  • 循环判断:`{% unless forloop.last %},{% endunless %}`,常用于控制分隔符
  • 常用过滤器:`{{ api.method | upcase }}`、`{{ tags | join: ", " }}`
示例
模板
# {{ api.name }}

请求方法:{{ api.method | default: "GET" | upcase }}
请求地址:{{ api.url }}

{% if api.auth %}
鉴权方式:{{ api.auth }}
{% endif %}

标签:{{ tags | join: ", " }}

## 请求头
{% for header in headers -%}
- {{ header.name }}: {{ header.value }}
{% endfor %}

## 测试用例
{% for item in cases -%}
{{ forloop.index }}. {{ item.title }}
   - 输入:{{ item.input }}
   - 期望:{{ item.expected }}{% unless forloop.last %}

{% endunless %}
{% endfor %}
变量 JSON
{
  "api": {
    "name": "创建用户接口",
    "method": "post",
    "url": "https://api.example.com/users",
    "auth": "Bearer Token"
  },
  "tags": ["api", "user", "test"],
  "headers": [
    {
      "name": "Content-Type",
      "value": "application/json"
    },
    {
      "name": "Authorization",
      "value": "Bearer <token>"
    }
  ],
  "cases": [
    {
      "title": "正常创建用户",
      "input": "{\"name\":\"Alice\",\"email\":\"alice@example.com\"}",
      "expected": "返回 201,并包含用户 ID"
    },
    {
      "title": "缺少邮箱",
      "input": "{\"name\":\"Alice\"}",
      "expected": "返回 400,并提示 email 必填"
    }
  ]
}
结果
# 创建用户接口

请求方法:POST
请求地址:https://api.example.com/users

鉴权方式:Bearer Token

标签:api, user, test

## 请求头
- Content-Type: application/json
- Authorization: Bearer <token>

## 测试用例
1. 正常创建用户
   - 输入:{"name":"Alice","email":"alice@example.com"}
   - 期望:返回 201,并包含用户 ID

2. 缺少邮箱
   - 输入:{"name":"Alice"}
   - 期望:返回 400,并提示 email 必填
注意事项
  • 缺失变量遵循当前缺失变量策略;需要稳定兜底文案时可在模板中使用 `default`。
  • 本工具只负责模板渲染,不会自动做 SQL、Shell、HTML、URL 转义;输出用于这些场景前,需要按目标环境明确转义。
  • 模板不执行任意代码,也不加载文件模板。
  • 普通用户最多保存 5 个模板;已保存模板可保存变量样板,并可在工作流的模板节点中复用。

常见问题

什么时候用模板渲染,什么时候用 KV 格式化?

模板渲染适合已有固定文本骨架、再用 JSON 变量填充的场景;KV 格式化更适合把一组 key/value 文本转成另一种简单格式。

模板会自动转义 SQL 或 Shell 参数吗?

不会。模板渲染面向多种文本输出,自动转义可能生成错误结果;需要转义时应在模板或上游处理步骤里明确完成。