AWS Lambda,带url模式/参数的Python无服务器处理程序



我正在尝试使用Python和无服务器设置lambda函数。我能够执行简单的POST/GET请求,并让它们代理到我的lambda函数就可以了。

现在我正在努力得到这样的东西与无服务器工作:

GET /my_function/{foo}

以一种我可以得到它的方式:

http://....aws.../my_function/bar

这就是我正在尝试的:

serverless.yml

functions:
my_function:
handler: handler.my_function
events:
- http: GET /my_function/{foo}

已部署到aws,但我无法获得该值。它说事件没有键:

handler.py:

def sitemap_entries(event, context):
s = MyNiceClass(event['foo'])
...

我错过了什么?

PS:当我发送--data '{"foo": "bar"}'

时,它在本地调用上工作谢谢

如果您使用Lambda代理集成(这是默认设置,所以除非您更改了它,否则您将使用它),那么路径参数在event中称为pathParameters的属性中,因此要访问它们,请使用:

event.get('pathParameters', {}).get('foo', None)

相关内容

  • 没有找到相关文章

最新更新