我可以在 GET 上使用无痛脚本来更新计数器吗?

Can I use a painless script on a GET to update a counter?

我有一个文档索引,其中包含一个“访问计数”字段,用于存储文档被访问的次数。 (很像这个网页。)

当然我可以在每次获取更新字段后使用更新,但是有没有办法将无痛脚本附加到获取请求以增加字段?类似于:

doc['access_count'] += 1;

我没有从文档中看到明显的答案,但如果有人这样做过,知道会很有帮助。

GET 调用应该是 idempotent,即多次调用相同的 URI 不会更改底层资源。所以你的要求违背了这个原则,而且(幸运的是)不可能做到这一点。

您需要单独更新该文档的计数器。