选择您的 Cookie 首选项

我们使用必要 Cookie 和类似工具提供我们的网站和服务。我们使用性能 Cookie 收集匿名统计数据,以便我们可以了解客户如何使用我们的网站并进行改进。必要 Cookie 无法停用,但您可以单击“自定义”或“拒绝”来拒绝性能 Cookie。

如果您同意,AWS 和经批准的第三方还将使用 Cookie 提供有用的网站功能、记住您的首选项并显示相关内容,包括相关广告。要接受或拒绝所有非必要 Cookie,请单击“接受”或“拒绝”。要做出更详细的选择,请单击“自定义”。

开始使用 适用于 Go 的 AWS SDK - 适用于 Go 的 AWS SDK v2

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

开始使用 适用于 Go 的 AWS SDK

适用于 Go 的 AWS SDK 需要 Go 1.20 或更高版本。你可以通过运行以下命令来查看你当前的 Go 版本:

go version

有关安装或升级 Go 版本的信息,请参阅 https://golang。 org/doc/install

注册一个亚马逊账户

在使用 适用于 Go 的 AWS SDK v2 之前,您必须拥有 Amazon 账户。请参阅如何创建和激活新 AWS 账户? 了解详情。

安装 适用于 Go 的 AWS SDK v2

适用于 Go 的 AWS SDK v2 使用 Go 模块,这是 Go 1.11 中引入的一项功能。运行以下 Go 命令来初始化本地项目。

go mod init example

初始化 Go 模块项目后,您将能够使用go get命令检索SDK及其所需的依赖项。这些依赖关系将记录在上一个命令创建go.mod的文件中。

以下命令显示如何检索要在应用程序中使用的标准SDK模块集。

go get github.com/aws/aws-sdk-go-v2 go get github.com/aws/aws-sdk-go-v2/config

这将检索核心SDK模块和用于加载 AWS 共享配置的配置模块。

接下来,您可以安装应用程序所需的一个或多个 AWS 服务API客户端。所有API客户端都位于github.com/aws/aws-sdk-go-v2/service导入层次结构下。可以在此处找到一整套当前支持的API客户端。要安装服务客户端,请执行以下命令来检索模块并在go.mod文件中记录依赖关系。在本示例中,我们检索了 Amazon S3 API 客户端。

go get github.com/aws/aws-sdk-go-v2/service/s3

获取您的 AWS 访问密钥

访问密钥包含访问密钥 ID 和秘密访问密钥,用于签署对 AWS发出的编程请求。如果您没有访问密钥,则可以使用AWS 管理控制台创建访问密钥。我们建议您使用IAM访问密钥而不是 AWS 根账户访问密钥。 IAM允许您安全地控制对 AWS 账户中 AWS 服务和资源的访问权限。

注意

要创建访问密钥,您必须拥有执行 IAM 所需操作的权限。有关更多信息,请参阅《IAM用户指南》中的授予用户管理密码策略和凭证的IAM权限

获取您的访问密钥 ID 和私有访问密钥。

  1. 打开 IAM 控制台

  2. 在导航菜单上,选择用户

  3. 选择您的IAM用户名(不是复选框)。

  4. 打开安全凭证选项卡,然后选择创建访问密钥

  5. 要查看新的访问密钥,请选择显示。您的凭证与下面类似:

    • 访问密钥 ID:AKIAIOSFODNN7EXAMPLE

    • 秘密访问密钥:wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY

  6. 要下载密钥对,请选择 Download .csv file(下载 .csv 文件)。将密钥存储在安全位置。

警告

对密钥保密以保护您的 AWS 帐户,切勿与组织以外的任何人共享。

调用操作

安装完成后SDK,您可以将 AWS 包导入 Go 应用程序以使用导入SDK、Config 和 Amazon S3 库的,如以下示例所示。 AWS导入SDK软件包后,将加载 AWS SDK共享配置,构造客户端,并调用API操作。

package main import ( "context" "log" "github.com/aws/aws-sdk-go-v2/aws" "github.com/aws/aws-sdk-go-v2/config" "github.com/aws/aws-sdk-go-v2/service/s3" ) func main() { // Load the Shared AWS Configuration (~/.aws/config) cfg, err := config.LoadDefaultConfig(context.TODO()) if err != nil { log.Fatal(err) } // Create an Amazon S3 service client client := s3.NewFromConfig(cfg) // Get the first page of results for ListObjectsV2 for a bucket output, err := client.ListObjectsV2(context.TODO(), &s3.ListObjectsV2Input{ Bucket: aws.String("amzn-s3-demo-bucket"), }) if err != nil { log.Fatal(err) } log.Println("first page results") for _, object := range output.Contents { log.Printf("key=%s size=%d", aws.ToString(object.Key), object.Size) } }
隐私网站条款Cookie 首选项
© 2025, Amazon Web Services, Inc. 或其附属公司。保留所有权利。