使用 jmespath 更改 JSON 键

Change JSON key using jmespath

是否有任何理由使用 jmespath 将 JSON 密钥更改或转换为其他内容?

例如,如果我 JSON 是这样的:

[
{"topic_id": 123, "name": "Topic 1"},
{"topic_id": 234, "name": "Topic 2"}
]

如何将 "topic_id" 更改为简单的 "id"?所以结果会是这样的:

[
{"id": 123, "name": "Topic 1"},
{"id": 234, "name": "Topic 2"}
]

我知道可以使用任何语言来完成,但是每种语言的解决方案都会有所不同。我想要一个使用 jmespath 的不可知论解决方案。

根据我在 jmespath 文档中阅读的内容,它可用于通过过滤现有的 JSON 来创建新的 JSON。可以在我的案例中使用相同的技术吗?

经过一些测试,我发现解决方案是使用这个表达式:

[].{id: topic_id, name: name}