Amazon s3 将AWS API网关重定向到S3二进制文件
我试图通过API网关URL从S3下载大型二进制文件。因为API网关中的最大下载大小是有限的,所以我想我可以提供AmazonS3的基本URL(在swagger文件中),并将文件夹/项目添加到我要下载的二进制文件中 但我发现的只是通过Lambda函数重定向API网关,但我不希望这样 我想要一个已经配置了重定向的文件 因此,如果我调用Amazon s3 将AWS API网关重定向到S3二进制文件,amazon-s3,aws-api-gateway,Amazon S3,Aws Api Gateway,我试图通过API网关URL从S3下载大型二进制文件。因为API网关中的最大下载大小是有限的,所以我想我可以提供AmazonS3的基本URL(在swagger文件中),并将文件夹/项目添加到我要下载的二进制文件中 但我发现的只是通过Lambda函数重定向API网关,但我不希望这样 我想要一个已经配置了重定向的文件 因此,如果我调用/folder/item我希望被重定向到s3url/folder/item 这可能吗?如果是,怎么做 例如: S3:https://s3.eu-central-1.am
/folder/item
我希望被重定向到s3url/folder/item
这可能吗?如果是,怎么做
例如:
- S3:
(项=大型二进制文件)https://s3.eu-central-1.amazonaws.com/folder/item
- API网关:
->重定向到s3 urlhttps://.execute-api.eu-central-1.amazonaws.com/stage/folder/item
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);
});
};
预先指定的s3url将在stage的swagger文件中进行计算和设置。它由buildsystem创建,buildsystem创建并部署swagger文件。我到处都能找到通过lambda实现的解决方案,但需要处理的代码更多:/