【发布时间】:2017-10-20 09:35:19
【问题描述】:
我正在尝试使用 RunTime 作为“Python 3.6”编写我的第一个 Lambda 函数。 以下是创建函数时的选择: 角色 - 选择自定义角色。 现有角色 - Lambda 基本执行 Python代码如下:
import json
def index_handler(event, context):
data = '{"Type": "SubscriptionConfirmation2","MessageId":
"123","SubscribeURL": "https://www.google.com"}'
data1 = json.loads(data)
print (data1['Type'])
if data1['Type'] == "SubscriptionConfirmation":
var=data1['SubscribeURL']
elif data1['Type'] == "Notification" and data1['SubscribeURL'] == var and
var != "":
var=data1['SomeOtherProperty']
else:
return "Invalid JSON input"
return var
执行此操作时,我遇到以下错误:
{
"errorMessage": "Bad handler 'index_handler'"
}
日志输出:
START RequestId: 3b263d82-b58c-11e7-aa6f-37f006380a9a Version: $LATEST
Bad handler 'index_handler': not enough values to unpack (expected 2, got 1)
END RequestId: 3b263d82-b58c-11e7-aa6f-37f006380a9a
REPORT RequestId: 3b263d82-b58c-11e7-aa6f-37f006380a9a Duration: 0.58 ms
Billed Duration: 100 ms Memory Size: 1280 MB Max Memory Used: 22 MB
请告诉我如何解决此错误并成功运行我的第一个 lambda 函数?执行后,我的代码目的是获取 HTTPrequests 然后读取它的 json 值(目前我已经存储在一个变量中)
【问题讨论】:
-
这看起来像 Python 语法吗?我建议你阅读官方Python tutorial。读到这里,您实际上会发现 Python 没有像这样使用
{ },也没有使用;,而且缩进有点相关! -
较早的python代码已在在线python编译器中成功测试-repl.it/Mwpx但我现在已经按照Unglückspilz提供的解决方案编辑了主要问题中的代码。
标签: python amazon-web-services lambda handler