【问题标题】:AWS Transfer Acceleration with pre-signed URLs using JavaScript SDKAWS Transfer Acceleration 与使用 JavaScript 开发工具包的预签名 URL
【发布时间】:2016-09-23 02:18:16
【问题描述】:

简单地说,是否可以将传输加速 (TA) 与使用 AWS-SDK for JavaScript 生成的预签名 URL 结合使用?

为特定 S3 存储桶启用 TA 会提供格式为:{bucket}.s3-accelerate.amazonaws.com 的 URL。但是,在为请求指定参数时,唯一有效的选项似乎是{Bucket: 'bucket', Key: 'key', Body: 'body', Expires: 60},并且似乎不允许我说我想使用 TA。生成的 URL 是通常的格式 {bucket}.s3-{region}.amazonaws.com,这对 TA 来说是错误的。

documentation 似乎没有提供太多关于预签名 URL 的信息。

【问题讨论】:

    标签: javascript node.js amazon-web-services amazon-s3 aws-sdk


    【解决方案1】:

    是的,但这仍然是无证的,在他们的文档或其他任何地方都找不到(直到现在:))。我们通过搜索 SDK 的源代码使其工作。您需要像这样加载 S3:

    var s3 = new AWS.S3({useAccelerateEndpoint: true});
    

    然后SDK将使用加速端点。

    【讨论】:

    • 王牌。棒极了。遗憾的是(还)没有真正记录在案。希望这也能帮助其他有兴趣利用此功能的人。干得好!
    【解决方案2】:

    碰巧的是,在适用于 JavaScript 的 AWS 开发工具包上启用了 S3 传输加速功能的文档化方法。这可以通过指定@Luc Hendriks 提到的相同属性来完成,但在 AWS.Config 类中如下所示:

    AWS.config.update({
        useAccelerateEndpoint: true
    });
    
    var s3 = new AWS.S3();
    

    文档参考:http://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/Config.html

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-04-15
      • 2018-12-01
      • 2014-03-03
      • 1970-01-01
      • 2020-08-22
      • 2014-02-26
      • 2018-10-02
      • 1970-01-01
      相关资源
      最近更新 更多