我正在尝试创建一个lambda函数,该函数调整s3中的图像大小并通过API网关对其进行响应。
请求转到API网关端点,它会触发lambda函数。 lambda函数调整它的大小并尝试将响应作为二进制文件给出,但它不能这样做。
我用Python开发了lambda函数。
调整代码大小没有任何问题,因为它可以调整s3上的图像大小并将其成功上传到resize s3存储桶中。 但是当我尝试将其作为二进制响应时,API网关无法响应它,我不知道为什么。
这是Lambda的响应代码。
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
}