簡體   English   中英

Python)對使用 AWS Lambda 的 AWS 網關調用 Rest API 的任何引用?

[英]Python) Any reference to call Rest API made by AWS gateway using AWS Lambda?

在這里,我使用 API Gateway 創建了 DB REST API,方法是 POST。 我想構建另一個調用 DB API 的 REST API,它將事件傳遞給 DB API 並從它返回響應(還有更多工作)。 兩種語言都是 Python 3.9

雖然我可以使用來自 AWS Lambda 外部的請求庫並調用 DB API 並獲得結果,但使用完全相同的代碼並在 AWS Lambda 上運行它會給我錯誤消息,它無法連接到 DB API

我檢查了同一 VPC 中的 DB API 函數和 API 調用函數,相同的安全代碼,角色有以下幾點: 角色

我知道我可以在 Lambda 中調用 DB API lambda 函數,但我需要該 REST API 以便其他服務可以訪問該 DB API

任何人都可以幫助我實現我想要的嗎? 謝謝

添加

所以我想知道當人們通常通過 AWS lambda 調用 AWS 網關 API 時我錯過了什么。

我的期望是因為它在其他環境中工作,它也必須在 lambda 上工作,但實際上它甚至無法連接到 API。

我使用以下代碼調用 API:

# DB API caller
def lambda_handler(event, context):

    URL = 'THE_URL_OF_DEPLOYED_API'
    timeout = 10

    # event is in format of dictionary
    response = requests.post(URL, json=event, timeout=timeout)

其次是這個答案 我發現我的 DB API 和 DB caller API lambda 函數都在同一個 VPC 中。 DB API 功能需要 VPC 設置,但 DB 調用者 API 實際上不需要 VPC。 所以我從 DB API caller lambda 函數中刪除了 VPC 配置,我可以成功獲得響應。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM