我正在尝试找出一种使用适用于 Go 的 AWS 开发工具包从存储桶生成 torrent 文件的方法。
我使用的是预签名的 url(因为它是私有(private)存储桶):
svc := s3.New(session.New(config))
req, _ := svc.GetObjectRequest(&s3.GetObjectInput{
Bucket: aws.String("bucketName"),
Key: "key",
})
// sign the url
url, err := req.Presign(120 * time.Minute)
从文档中,生成一个 torrent,语法:
GET /ObjectName?torrent HTTP/1.1
Host: BucketName.s3.amazonaws.com
Date: date
Authorization: authorization string
如何将 ?torrent
参数添加到 GO 中的预签名 url?
最佳答案
在 AWS Go SDK 上尝试 GetOBjectTorrent
方法。它会返回给你 .torrent
文件作为响应,这里是示例代码:
svc := s3.New(session.New())
input := &s3.GetObjectTorrentInput{
Bucket: aws.String("bucketName"),
Key: aws.String("key"),
}
result, _ := svc.GetObjectTorrent(input)
fmt.Println(result)
请参阅http://docs.aws.amazon.com/sdk-for-go/api/service/s3/#S3.GetObjectTorrent更多细节。希望对您有所帮助。
关于amazon-web-services - 通过 Go SDK (Amazon S3) 从 Bucket 生成 Torrent,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45785038/