访问GO结构中的字段
我是Golang世界的新手,正在尝试解析AWSAPI返回的访问GO结构中的字段,go,aws-sdk,aws-sdk-go,Go,Aws Sdk,Aws Sdk Go,我是Golang世界的新手,正在尝试解析AWSAPI返回的json响应 我尝试过用点符号解析结果,似乎在更高的层次上获得了成功。下面是我的实验结果 为简洁起见,我排除了其他字段 测试1 fmt.Println(result) 返回 { DBClusterSnapshots: [{ Status: "available" }] } { Status: "available" } 测试2 fmt.Println(result.DBClusterSnapshots
json
响应
我尝试过用点符号解析结果,似乎在更高的层次上获得了成功。下面是我的实验结果
为简洁起见,我排除了其他字段
测试1
fmt.Println(result)
返回
{
DBClusterSnapshots: [{
Status: "available"
}]
}
{
Status: "available"
}
测试2
fmt.Println(result.DBClusterSnapshots[0])
返回
{
DBClusterSnapshots: [{
Status: "available"
}]
}
{
Status: "available"
}
测试3
fmt.Println(result.DBClusterSnapshots[0].Status)
返回对对象的引用
0xc0001e74c8
给出最后一个示例(测试3),我如何正确地解析它以获得@mkopriva指出的
状态值“可用”
Status
是一个指针,因此在打算提取字符串时需要取消引用
因此,为了实现状态值的提取,我们可以这样取消对它的引用
s := *result.DBClusterSnapshots[0].Status
fmt.Println(s)
Status
似乎是一个指针,因此如果需要字符串,请取消对它的引用。@mkopriva您可以提供一个示例s:=*p
(分配s
由p
指向的值)@mkopriva谢谢!!注意:这与“解析”或“json”无关。您有一个预定义结构类型的Go值,并且正在尝试使用(而不是点表示法)访问它的字段