| 存储 | PUT /_scripts/<id>,body 里 script.lang=mustache |
|---|---|
| 调用 | GET /<index>/_search/template,传 id 与 params |
| 返回值渲染 | 模板里用 {{var}} 与 {{#cond}}...{{/cond}} 条件块 |
示例
示例
PUT /_scripts/my_template
{
"script": {
"lang": "mustache",
"source": {
"query": { "match": { "title": "{{query_string}}" } },
"size": "{{size}}"
}
}
}
GET /my-index/_search/template
{
"id": "my_template",
"params": { "query_string": "elastic", "size": 5 }
}模板参数字符串会按查询语法解释,把用户输入直接塞进 match 之外的位置可能引入注入风险,优先让模板内部使用 match 查询。