gpt4 book ai didi

amazon-s3 - 将 AWS API 网关重定向到 S3 二进制文件

转载 作者:行者123 更新时间:2023-12-01 13:32:59 27 4
gpt4 key购买 nike

我正在尝试通过 API 网关 URL 从 S3 下载大型二进制文件。因为 API Gateway 中的最大下载大小是有限的,所以我认为我可以提供 Amazon S3 的基本 URL(在 swagger 文件中)并将文件夹/项目添加到我想要下载的二进制文件中。

但我发现的只是通过 Lambda 函数重定向 API 网关,但我不想要那样。

我想要一个已经配置了重定向的 swagger 文件。

所以如果我调用 <api_url>/folder/item我想被重定向到 s3-url/folder/item
这可能吗?如果是这样,如何?

例子:

  • S3: https://s3.eu-central-1.amazonaws.com/folder/item (项目 = 大二进制文件)
  • API网关: https://<id>.execute-api.eu-central-1.amazonaws.com/stage/folder/item -> 重定向到 s3 网址
  • 最佳答案

    我不确定您是否可以在没有后端的情况下通过 API Gateway 将请求重定向到预先签名的 S3 url 来计算预先签名的 S3 url。预签名 S3 url 功能由 SDK 而不是 API 提供。您需要使用 Lambda 函数来计算预签名的 S3 url 并返回。

    var AWS = require('aws-sdk');
    AWS.config.region = "us-east-1";
    var s3 = new AWS.S3({signatureVersion: 'v4'});
    var BUCKET_NAME = 'my-bucket-name'

    exports.handler = (event, context, callback) => {

    var params = {Bucket: BUCKET_NAME, Key: event.path};
    s3.getSignedUrl('putObject', params, function (err, url) {
    console.log('The URL is', url);
    callback(null, url);
    });

    };

    关于amazon-s3 - 将 AWS API 网关重定向到 S3 二进制文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44756517/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com