Amazon web services 无法解压缩上载的文件。请检查您的文件,然后再次尝试上载错误

Amazon web services 无法解压缩上载的文件。请检查您的文件,然后再次尝试上载错误,amazon-web-services,aws-lambda,boto3,Amazon Web Services,Aws Lambda,Boto3,我试图用库boto3从另一个lambda函数创建一个lambda函数,我遇到了一些问题,特别是创建过程中的code部分 在boto3中,它指出对于代码,我们需要这样的东西 Code={ 'ZipFile': b'bytes', 'S3Bucket': 'string', 'S3Key': 'string', 'S3ObjectVersion': 'string' } 下面,它根据代码区域说明以下内容 代码(dict)--

我试图用库
boto3
从另一个lambda函数创建一个lambda函数,我遇到了一些问题,特别是创建过程中的
code
部分

在boto3中,它指出对于代码,我们需要这样的东西

Code={
        'ZipFile': b'bytes',
        'S3Bucket': 'string',
        'S3Key': 'string',
        'S3ObjectVersion': 'string'
    }
下面,它根据代码区域说明以下内容

代码(dict)-- [必选]

函数的代码

ZipFile(字节)-- 部署包的base64编码内容。AWS SDK和AWS CLI客户端为您处理编码

S3Bucket(字符串)-- 与函数位于同一AWS区域的Amazon S3存储桶。bucket可以位于不同的AWS帐户中

S3Key(字符串)-- 部署包的AmazonS3密钥

S3ObjectVersion(字符串)-- 对于版本化对象,为要使用的部署包对象的版本

据我所知,我可以创建一个包含代码的bucket(我不需要任何自定义依赖项,所以没有部署包)。由此我可以创建函数(显然我错了)

当我运行上面的代码时,我发现
无法解压缩上传的文件。请检查您的文件,然后再次尝试上载。


知道我做错了什么吗?是否可以从bucket中的源代码创建函数,或者必须创建zip文件和部署包?

您不能通过此方法上载单个.py文件。必须将Lambda函数作为.zip文件上载。

不能通过此方法上载单个.py文件。您必须以.zip文件的形式上载Lambda函数。

请描述您遇到的问题/错误。对不起!,编辑问题请描述您遇到的问题/错误。对不起!,编辑的问题非常有效!工作得很好!
client.create_function(
        FunctionName = 'Test',
        Runtime = 'python3.7',
        Role = 'role',
        Handler = 'Test.lambda_handler',
        Code = {
            'S3Bucket': 'myBucketName',
            'S3Key': 'FunctionNameInsideBucket.py'
        }
    )