Skip to content

Instantly share code, notes, and snippets.

@jerolan
Created September 2, 2019 22:04
Show Gist options
  • Save jerolan/985e8371f59a82446e926d6a0b9081de to your computer and use it in GitHub Desktop.
Save jerolan/985e8371f59a82446e926d6a0b9081de to your computer and use it in GitHub Desktop.
package main
import (
"log"
"time"
"github.com/aws/aws-sdk-go/aws"
"github.com/aws/aws-sdk-go/aws/credentials"
"github.com/aws/aws-sdk-go/aws/session"
"github.com/aws/aws-sdk-go/service/s3"
)
func main() {
sess, err := session.NewSession(&aws.Config{
Credentials: credentials.NewStaticCredentials(
"aws_access_key_id",
"aws_secret_access_key",
"",
),
Region: aws.String("us-west-1")},
)
// Create S3 service client
svc := s3.New(sess)
req, _ := svc.GetObjectRequest(&s3.GetObjectInput{
Bucket: aws.String("bucket-name"),
Key: aws.String("object-key"),
})
urlStr, err := req.Presign(1 * time.Minute)
if err != nil {
log.Println("Failed to sign request", err)
}
log.Println("The URL is", urlStr)
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment