[Go] AWS SDK で文字列をテキストファイルとして S3 にアップロードする

作成日: 2021年07月20日

AWS SDK を使って、Hello world. という文字列を dummy-file-name.txt というファイル名でファイルとして S3 にアップロードを行うサンプルコードです。

package main

import (
    "bytes"

    "github.com/aws/aws-sdk-go/aws"
    "github.com/aws/aws-sdk-go/aws/session"
    "github.com/aws/aws-sdk-go/service/s3"
)

func main() {
    s3Client := s3.New(
        session.New(),
        &aws.Config{Region: aws.String("ap-northeast-1")})

    _, err := s3Client.PutObject(&s3.PutObjectInput{
        Bucket: aws.String("test.s3.example.com"),
        Key:    aws.String("dummy-file-name.txt"),
        Body:   bytes.NewReader([]byte("Hello world.")),
    })
    if err != nil {
        panic(err.Error())
    }
}

説明

  • PutObjectInput 構造体は PutObject 関数の引数となる構造体です。Bucket にはアップロードを行うバケット名、Key にはファイルを設置するファイル名を含むパス、Body にはファイルとして設置する[]byte 型のデータを指定します。
Go