首页 > 解决方案 > 将 map[string]types.AttributeValue 解组到特定的业务模型/结构

问题描述

我正在尝试使用 AWS SDK GO v2:https ://github.com/aws/aws-sdk-go-v2 并且似乎很难解组 dynamodb.GetItemOutput 类型为 map[string]types 的 Item 属性.属性值。

在 AWS SDK GO v1 中,很容易调用dynamodbattribute.UnmarshalMap(result.Item, &data)来解组结果。但是在 v2 上,我找不到任何方法来做到这一点。

有人知道怎么做吗?

标签: aws-sdk-go

解决方案


感谢 aws-sdk-go-v2 项目的贡献者之一 Sean McGrail,我能够找到答案。属性值库具有将查询结果解组和编组到您的特定业务模型/结构的方法:

https://pkg.go.dev/github.com/aws/aws-sdk-go-v2/feature/dynamodb/attributevalue

我只需要手动导入这个库,因为在下载 aws-sdk-go-v2 时没有预先包含它:

go get github.com/aws/aws-sdk-go-v2/feature/dynamodb/attributevalue

推荐阅读