Python 将图像文件发送到AWS Lambda函数
我试图使用Python将一个图像发送到Lambda函数,只是为了测试一个项目,但Postman给了我一个错误,我不知道如何解决它 我的代码只是检测键“image”中是否有一些数据并返回一些消息。我正在使用Postman发送POST请求,我在Body选项卡中单击,选择表单数据选项,然后为键编写image,并从我的计算机中选择图像文件(图像大小为27 kb)。这是我的Lambda函数中的代码:Python 将图像文件发送到AWS Lambda函数,python,amazon-web-services,api,aws-lambda,Python,Amazon Web Services,Api,Aws Lambda,我试图使用Python将一个图像发送到Lambda函数,只是为了测试一个项目,但Postman给了我一个错误,我不知道如何解决它 我的代码只是检测键“image”中是否有一些数据并返回一些消息。我正在使用Postman发送POST请求,我在Body选项卡中单击,选择表单数据选项,然后为键编写image,并从我的计算机中选择图像文件(图像大小为27 kb)。这是我的Lambda函数中的代码: def lambda_handler(event, context): if event['ima
def lambda_handler(event, context):
if event['image']:
return {
"Message": 'Everything went ok'
}
这是我从邮递员那里收到的错误信息:
{“message”:“无法将请求正文解析为json:意外”
数值中的字符('-'(代码45)):应为数字(0-9)至
在[Source:
(byte[])“------------------------------------137965576541301454606184\r\n内容处理:表单数据;name=“image”;filename=“TestImage.png”\r\n内容类型:
image/png\r\n\r\n�PNG\r\n\n…}
为了解决这个问题,我需要将相机设置为将图像转换为base64,然后将其上传到服务器 在服务器中,我再次转换它,然后根据需要使用它。Base64是一组二进制到文本编码方案,通过将二进制数据转换为基数64表示,以ASCII字符串格式表示二进制数据
因此,您将图像转换为字符串,然后发送,这是我发现的上传图像的最佳方式。为了解决这个问题,我需要将相机设置为将图像转换为base64,然后将其上传到服务器 在服务器中,我再次转换它,然后根据需要使用它。Base64是一组二进制到文本编码方案,通过将二进制数据转换为基数64表示,以ASCII字符串格式表示二进制数据
因此,您将图像转换为字符串然后发送,这是我发现的上传图像的最佳方式。您使用API gateway吗?图像应设置为二进制播放负载并编码为base64。谢谢@Marcin,我将图像转换为base64,然后发送到服务器谢谢您让我知道:-)您使用API gatewa吗是吗?图像应设置为二进制播放负载并编码为base64。谢谢@Marcin,我将图像转换为base64,然后发送到服务器谢谢您让我知道:-)