gpt4 book ai didi

json - 如何解析来自 AWS Go API 的响应

转载 作者:数据小太阳 更新时间:2023-10-29 03:06:26 27 4
gpt4 key购买 nike

我正在使用以下示例程序:

func getEnv(appName string, env string) {
svc := elasticbeanstalk.New(session.New(), &aws.Config{Region: aws.String("us-east-1")})

params := &elasticbeanstalk.DescribeConfigurationSettingsInput{
ApplicationName: aws.String(appName), // Required
EnvironmentName: aws.String(env),
}
resp, err := svc.DescribeConfigurationSettings(params)

if err != nil {
fmt.Println(err.Error())
return
}
v := resp.ConfigurationSettings
fmt.Printf("%s", v)
}

它打印出以下响应;除了缺少引号外,这看起来像一个有效的 json。例如:ApplicationName 而不是“ApplicationName”。

我如何解析这个?或者从 AWS 获取有效的 json?

ConfigurationSettings: [{
ApplicationName: "myApp",
DateCreated: 2016-01-12 00:10:10 +0000 UTC,
DateUpdated: 2016-01-12 00:10:10 +0000 UTC,
DeploymentStatus: "deployed",
Description: "Environment created from the EB CLI using \"eb create\"",
EnvironmentName: "stag-myApp-app-s1",
OptionSettings: [
...

最佳答案

resp.ConfigurationSettings 不再是 JSON 格式,aws-sdk-go 包为您处理了这个问题。当你这样做时,

v := resp.ConfigurationSettings

v 包含一个从 JSON 响应解析的实例 []*ConfigurationSettingsDescription,您不必自己解析它。打印出来时看到的是 Go 结构表示。您可以继续使用它:

if len(v) > 0 {
log.Println(v[0].ApplicationName)
}

这应该打印出 myApp

关于json - 如何解析来自 AWS Go API 的响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35467766/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com