我有一个使用API URL调用lambda函数的方案。调用lambda函数后,我想要lambda函数中的特定URL。
https://******.execute-api.eu-west-1.amazonaws.com/test/first
https://******.execute-api.eu-west-1.amazonaws.com/test/second
从此URL,我希望在lambda中将资源命名为first或second。这里的测试是我使用我的API的阶段名称。我创建了多个资源,希望更改lambda的行为。我该怎么办?任何帮助,将不胜感激。
答案 0 :(得分:1)
您可以从Lambda函数的events
变量中的值重建完整的url。
events['headers']['Host'] = '******.execute-api.eu-west-1.amazonaws.com'
events['requestContext']['stage'] = 'test'
events['path'] = '/first'
总共,您可以将它们加在一起获得https://******.execute-api.eu-west-1.amazonaws.com/test/first
:
'https://' + events['headers']['Host'] + '/' + events['requestContext']['stage'] + events['path']
有关可以从事件变量中获取的其他信息的详细信息,请参阅AWS文档的Lambda Proxy integration部分。