amazon-web-services - 通过 Go SDK (Amazon S3) 从 Bucket 生成 Torrent

标签 amazon-web-services go amazon-s3

我正在尝试找出一种使用适用于 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/

相关文章:

amazon-web-services - 如何使用vscode AWS扩展名编辑Lambda(GO)

ftp - 将文件从 FTP 移动到 S3

amazon-web-services - AWS ALB 中基于路径的路由到具有多个端口的单个主机

amazon-web-services - 如何使用 Elastic Beanstalk 加密负载均衡器和 Web 服务器之间的流量

go - cgo undefined reference

google-app-engine - 使用 GetMulti 列出单一数据存储类型的所有实体

logging - 我应该在 Go 中关闭日志文件吗?

javascript - 带有回调 httpUploadProgress 的 AWS 开发工具包 JavaScript Promise

java - "The specified key does not exist"存储桶中真实存在的对象的 S3 错误

amazon-web-services - 从 S3 超时流式下载