【发布时间】:2018-09-17 18:11:59
【问题描述】:
我从 json 文件中放入项目,我的代码可以输出扫描结果 json,但尝试使用内置进程将其解组为我的类型只会创建空值/零值。
预期:0,番茄,0.50
实际:0, , 0
item.json
{
"id" : {"N" : "0"},
"description" : {"S": "tomato"},
"price" : {"N": "0.50"}
}
product.go
type product struct {
id int
description string
price float64
}
我的查询功能:
func listAllProducts() []product {
sess, err := session.NewSession(&aws.Config{
Region: aws.String("us-east-1"),
},
)
svc := dynamodb.New(sess)
productList := []product{}
input := &dynamodb.ScanInput{
TableName: aws.String("Products"),
}
result, err := svc.Scan(input)
err = dynamodbattribute.UnmarshalListOfMaps(result.Items, &productList)
return productList
}
输出代码
productList := listAllProducts()
for _, p := range productList {
log.Println(strconv.Itoa(p.id) + ", " + p.description + ", " + strconv.FormatFloat(p.price, 'f', -1, 64))
}
【问题讨论】:
标签: json amazon-web-services go amazon-dynamodb unmarshalling