AWS Lambda Python:模块上缺少“处理程序”

Hel*_*lad 5 amazon-web-services aws-lambda

我具有以下结构的部署包:

my-project.zip
    --- my-project.py
    ------ lambda_handler()
Run Code Online (Sandbox Code Playgroud)

然后在配置文件中定义处理程序路径

my-project.lambda_handler

得到错误:

'handler' missing on module
Run Code Online (Sandbox Code Playgroud)

不明白

Sky*_*ker 5

有一些问题发生此错误。

问题1:

您会遇到的第一个问题是,如果您错误地命名文件,则会出现以下错误:

无法导入模块“ lambda_function”:没有名为lambda_function的模块

如果您错误地命名函数,则会出现此错误:

模块'lambda_function_file'上缺少处理程序'handler':'module'对象没有属性'handler'

在仪表板上,确保输入处理程序字段,function_filename.actual_function_name并确保它们与您的部署包匹配。

如果仅这些消息更具指导性,那将是一个简单的步骤。

资源链接:

没有lambda_function?

问题2:

adrian_prajaaws论坛中解决了该问题。他回答了以下内容

我相信你index.js应该包含

exports.createThumbnailHandler = function(event, context) {}
Run Code Online (Sandbox Code Playgroud)

问题#3:

解决方案:正确指定方法调用

node.jsLambda的设置中by调用的方法的规范不正确时,就会发生这种情况。请查看调用方法的规范。

对于上述错误消息,我尝试调用的处理程序方法index.js,但找不到相应的方法。调用的处理通过配置选项卡上的“处理程序”进行设置。以下是调用的处理程序方法的设置示例index.js在此处输入图片说明

资源链接:

  1. http://qiita.com/kazuqqfp/items/ac8d93918d0030b31aad
  2. AWS Lambda Function返回模块'index'上缺少的处理程序'handler'