gpt4 book ai didi

groovy - 没有脚本Elasticsearch的部分更新文档

转载 作者:行者123 更新时间:2023-12-03 01:05:11 26 4
gpt4 key购买 nike

我正在使用以下代码进行部分更新

POST /website/blog/1/_update
{
"script" : "ctx._source.views+=1"
}

有没有其他方法可以实现同一目标?因为我不想改变任何东西
常规脚本,因为上次我更改了设置并且服务器受到威胁。

因此,如果没有解决方法,请有人帮助我提供解决方案或一些安全措施。

最佳答案

不可以,不使用脚本就无法动态更改字段值。

但是,You can use file-based scripts意味着您可以禁用动态脚本(ES 1.4.3+中的默认设置),同时仍以安全,可信任的方式使用脚本。

config/
elasticsearch.yml
logging.yml
scripts/
your_custom_script.groovy

您可以拥有脚本存储:
ctx._source.views += your_param

存储后,您可以按名称访问脚本,而绕过动态脚本。
POST /website/blog/1/_update
{
"script": "your_custom_script",
"params" : {
"your_param" : 1
}
}

根据Elasticsearch的版本,可以更好地命名 script参数(例如,ES 2.0对动态脚本使用“内联”),但这应该可以帮助您起步。

关于groovy - 没有脚本Elasticsearch的部分更新文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31102034/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com