【问题标题】:How to ignore dynamic key when deserialising JSON with jackson使用jackson反序列化JSON时如何忽略动态键
【发布时间】:2022-01-01 12:31:18
【问题描述】:

我正在尝试访问 X-Amz-Content-Sha256 参数中的数据,但 X-Amz-Content-Sha256 键对于每个请求都不同,因此我无法对键值进行硬编码。

在使用 mapper.readValue() 时,有没有办法在不知道其键的情况下访问对象?

"components": {
    "parameters": {
      "X-Amz-Content-Sha256": {
        "name": "X-Amz-Content-Sha256",
        "in": "header",
        "schema": {
          "type": "string"
        },
      }
    }
}

【问题讨论】:

  • 使用Map 属性。

标签: java jackson fasterxml


【解决方案1】:

您需要将其反序列化为Map。然后您可以检查Map 键以获取所需的值。

将 JSON 字符串反序列化为 Map 的示例代码:

ObjectReader reader = new ObjectMapper().readerFor(Map.class);

Map<String, Object> jsonMap = reader.readValue(jsonString);

【讨论】:

    猜你喜欢
    • 2016-07-26
    • 2012-02-02
    • 2018-07-21
    • 2012-02-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-11
    相关资源
    最近更新 更多