猿问

Go 中的 AWS 开发工具包不会从配置文件中获取区域信息

尝试按照官方示例列出存储桶


    sess, err := session.NewSessionWithOptions(session.Options{

        Profile: "my-profile",

    })


    if err != nil {

        exitErrorf("Unable to create session, %v", err)

    }


    // Create S3 service client

    svc := s3.New(sess)

    result, err := svc.ListBuckets(nil)

    if err != nil {

        exitErrorf("Unable to list buckets, %v", err)

    }

请注意,my-profile(居住在~/.aws/credentials)具有关联的区域信息


[my-profile]

aws_access_key_id=XXXXXXX

aws_secret_access_key=XXXXXXX

region=us-east-1

该程序失败如下:


Unable to list buckets, MissingRegion: could not find region configuration

exit status 1

编辑:设法通过添加这行代码来解决这个问题


os.Setenv("AWS_REGION", "us-east-1")

但我想正确的方法应该是让 SDK 正确读取配置文件,不是吗?


qq_遁去的一_1
浏览 140回答 1
1回答

猛跑小猪

区域设置在~/.aws/config.~/.aws/config[my-profile] region=us-east-1~/.aws/凭证[my-profile] aws_access_key_id=XXXXXXX aws_secret_access_key=XXXXXXX
随时随地看视频慕课网APP

相关分类

Go
我要回答