模板渲染
使用 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 参数吗?
不会。模板渲染面向多种文本输出,自动转义可能生成错误结果;需要转义时应在模板或上游处理步骤里明确完成。
