Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/432.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/43.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript AWS API网关和Lambda将图像上载和下载到s3_Javascript_Node.js_Amazon S3_Aws Lambda_Aws Api Gateway - Fatal编程技术网

Javascript AWS API网关和Lambda将图像上载和下载到s3

Javascript AWS API网关和Lambda将图像上载和下载到s3,javascript,node.js,amazon-s3,aws-lambda,aws-api-gateway,Javascript,Node.js,Amazon S3,Aws Lambda,Aws Api Gateway,我已经创建了一个lambda来上传和下载图像到s3 我面临的问题是,我正在与来自API网关的代理集成进行斗争 在检查文档和关于我的问题后,我可以让上传工作或下载工作,但不能两者兼而有之:( 如果我在serverless.yml文件的apiGateway中的binaryMediaTypes中添加-*/*,正如链接堆栈溢出问题中所建议的那样,我的下载开始工作,但我的上载功能停止了…(返回502) 如果我不添加此*/*,则上载工作正常,但我无法进行下载 我尝试过通过不同的方式进行上传,例如在表单中添加

我已经创建了一个lambda来上传和下载图像到s3

我面临的问题是,我正在与来自API网关的代理集成进行斗争

在检查文档和关于我的问题后,我可以让上传工作或下载工作,但不能两者兼而有之:(

如果我在serverless.yml文件的apiGateway中的binaryMediaTypes中添加-
*/*
,正如链接堆栈溢出问题中所建议的那样,我的下载开始工作,但我的上载功能停止了…(返回502)

如果我不添加此
*/*
,则上载工作正常,但我无法进行下载

我尝试过通过不同的方式进行上传,例如在表单中添加文件或在正文中作为base64字符串,这两种方式都可以在没有
*/*
的情况下工作,但在添加
*/*
时会停止

我找不到另一种方式,使下载工作的方式,我不刹车上传部分

有什么线索吗

(obs1:我正在下载返回obj中将内容类型设置为“image/jpeg”)

(obs2:我知道您可以直接从s3下载映像,但我在lambda上实现了一些逻辑来决定应该为哪个映像提供服务,所以我想通过lambda来实现这一点)


以下是文件中关于网关的部分:

通过lambda从s3上传和下载图像的最佳方式是预签名URL


使用lambda创建预签名URL

通过lambda从s3上传和下载图像的最佳方法是预签名URL


使用lambda创建预签名URL

两个问题。1.您是否从lambda返回二进制或base64数据?您是否在响应中返回内容类型标题?上传和下载的响应格式可能不太正确。您可以查看您的上传是否真的进入返回502错误时发送到S3。如果是这种情况,请发布两个函数的响应格式。两个问题。1.您是否从lambda返回二进制或base64数据?您是否在响应中返回内容类型标头?上传和下载的响应格式可能不太正确t、 您可以通过查看您的上传是否在返回502错误时进入S3进行检查。如果是这种情况,请发布两个函数的响应格式。