Python 将图像文件发送到AWS 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

我试图使用Python将一个图像发送到Lambda函数,只是为了测试一个项目,但Postman给了我一个错误,我不知道如何解决它

我的代码只是检测键“image”中是否有一些数据并返回一些消息。我正在使用Postman发送POST请求,我在Body选项卡中单击,选择表单数据选项,然后为键编写image,并从我的计算机中选择图像文件(图像大小为27 kb)。这是我的Lambda函数中的代码:

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,然后发送到服务器谢谢您让我知道:-)