为了账号安全,请及时绑定邮箱和手机立即绑定

用于 dynamodb 的 Golang 包,具有​​地图、列表和 JSON 支持

用于 dynamodb 的 Golang 包,具有​​地图、列表和 JSON 支持

Go
慕哥6287543 2021-08-23 16:27:20
我正在尝试在 dynamodb 中保存 JSON 对象,使用新添加的对 JSON 类型的支持(我的理解是 JSON 类型基本上是地图+列表),以便我可以查询和修改嵌套的 JSON 文档。我找不到任何具有新添加的数据类型支持的 dynamodb 的 golang 包。请对此有任何建议吗?
查看完整描述

2 回答

?
回首忆惘然

TA贡献1847条经验 获得超11个赞

要将 JSON 放入 aws-dynamodb,我们首先需要遍历 JSON 结构的每个属性并将其转换为 dynamodb.AttributeValue,如下所示:


func (e *DB) saveToDynamodb(data map[string]interface{}){

var vv=make(map[string]*dynamodb.AttributeValue)


for k,v:=range data{

    x:=(v.(string))  //assert type as required

    xx:=&(x)

    vv[k]=&dynamodb.AttributeValue{S: xx,}

}

//s:=data["asset_id"].(string)

params := &dynamodb.PutItemInput{

    Item: vv,

    TableName: aws.String("Asset_Data"), // Required

}

resp, err := e.dynamodb.PutItem(params)


if err != nil {

    // Print the error, cast err to awserr.Error to get the Code and

    // Message from an error.

    fmt.Println(err.Error())

    return

}


// Pretty-print the response data.

fmt.Println(resp)

}


查看完整回答
反对 回复 2021-08-23
  • 2 回答
  • 0 关注
  • 185 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信