我开始使用AWS Lambda,AWS API Gateway和无服务器以及其他供应商API构建JAM应用程序 .
此供应商API由Lambda函数调用,并且需要传递回调URL以在完成其工作后接收某些数据 .
当我用无服务器生成所有内容时,转到控制台并提取API URL以手动设置作为env变量对我没用,我需要一种方法,以便无服务器可以将公开的API endpoints URL传递给lambda函数 .
如何将Lambda函数HTTP事件URI作为env或可传递给同一堆栈中的另一个Lambda函数的东西?
有人可以提供一些无服务器片段如何实现这一目标?谢谢!
1 回答
如果要查找触发Lambda函数的API网关URL,则需要检查Lambda函数接收的
event
变量 .如果要构建API网关URL(例如:https://abcdefghij.execute-api.us-east-1.amazonaws.com/dev/my-service/resource),请使用:
完整的测试示例:
Note :如果您直接在AWS Lambda控制台中对此进行测试,则可能会抛出错误,因为
event
对象将为空且没有headers
和requestContext
属性 . 因此,请尝试使用API网关控制台或直接浏览URL .