Python 使用API网关在Lambda中调整大小后在浏览器上显示图像
我试图创建一个lambda函数,它可以调整s3中的图像大小,并通过API网关对其进行响应 该请求到达API网关端点并触发lambda函数。lambda函数调整它的大小,并尝试将响应作为二进制文件提供给它,但它不能这样做 我已经用Python开发了lambda函数 这是我的API网关中的集成响应配置。 这是方法响应配置。 这是二进制支持配置。 调整代码大小没有任何问题,因为它可以调整s3上的图像大小,并将其成功上载到ResizeS3存储桶中。 但当我尝试以二进制方式响应它时,API网关无法响应它,我不知道为什么 这是Lambda中的响应代码Python 使用API网关在Lambda中调整大小后在浏览器上显示图像,python,image,amazon-web-services,amazon-s3,lambda,Python,Image,Amazon Web Services,Amazon S3,Lambda,我试图创建一个lambda函数,它可以调整s3中的图像大小,并通过API网关对其进行响应 该请求到达API网关端点并触发lambda函数。lambda函数调整它的大小,并尝试将响应作为二进制文件提供给它,但它不能这样做 我已经用Python开发了lambda函数 这是我的API网关中的集成响应配置。 这是方法响应配置。 这是二进制支持配置。 调整代码大小没有任何问题,因为它可以调整s3上的图像大小,并将其成功上载到ResizeS3存储桶中。 但当我尝试以二进制方式响应它时,API网关无法响
upload_path = /tmp/resized-test.jpg
with open(upload_path, 'rb') as f:
image_content = f.read()
encoded_string = str(binascii.hexlify(image_content))
return {
'header': {
'Content-Type': content_type
},
'body': encoded_string
}
作为响应,您可以发送已调整大小的图像的URL吗?这将更容易实现…@Deepak你的意思是我响应s3大小的URL并在API网关中通过301重定向它吗?是的;或者在客户端,一旦收到调整大小的URL,就可以在客户端重定向,或者打开一个包含返回URL的新选项卡。。在客户端进行操作将更加方便simpler@Deepak事实上,这个301看起来更好,但我不确定当URL被重定向时浏览器是如何工作的。作为响应,你能发送大小调整后的图像的URL吗?这将更容易实现…@Deepak你的意思是我响应s3大小的URL并在API网关中通过301重定向它吗?是的;或者在客户端,一旦收到调整大小的URL,就可以在客户端重定向,或者打开一个包含返回URL的新选项卡。。在客户端进行操作将更加方便simpler@Deepak事实上,这301似乎更好,但我不知道当URL被重定向时浏览器是如何工作的。