亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

AWS API Gateway HTTP API 如何傳遞字符串查詢參數?

AWS API Gateway HTTP API 如何傳遞字符串查詢參數?

Go
BIG陽 2022-08-24 11:43:40
因此,我正在制作一個應用程序,需要 AWS API Gateway。我想使用HTTP API而不是REST API。我的代碼看起來像這樣package mainimport (    "database/sql"    "fmt"    "strings"    "github.com/aws/aws-lambda-go/lambda"    _ "github.com/lib/pq")here I make a connection to the databasefunc fetch(inte string, input string) string {    if err != nil {        panic(err)    }    switch inte {    case "00":{            res = append(res, response)        }        switch len(res) {        case 0:            return "401"        }            case "01":                }        switch len(res) {        case 0:            return "402"        }            }    return "404"}type LambdaEvent struct {    Req string `json:"req"`    Num string `json:"num"`}type LambdaResponse struct {    Res string `json:"res"`}func LambdaHandler(event LambdaEvent) (LambdaResponse, error) {    res := fetch(event.Num, event.Req)    return LambdaResponse{        Res: res,    }, nil}func main() {    lambda.Start(LambdaHandler)}因此,如您所見,這不是完整的代碼。我與數據庫建立連接,并使用請求字符串查詢。所以我嘗試了與http api相同的方法,但它只是給了我404,這意味著http api不會將查詢字符串傳遞給lambda,所以我如何讓我的api將數據傳遞給lambda。Rest api 工作 HTTP 不行。感謝您的任何幫助。
查看完整描述

3 回答

?
小唯快跑啊

TA貢獻1863條經驗 獲得超2個贊

我不熟悉APIGW的無服務器框架,但操作QueryString參數內置于APIGW控制臺中。只需登錄 AWS 并搜索 APIGateway。編輯 HTTP API,然后從左側的菜單中選擇。選擇映射到您的 Lambda 函數的集成,然后編輯右側的IntegrationsParameter Mappings


http://img1.sycdn.imooc.com//63059e9300017c4a11450510.jpg

查看完整回答
反對 回復 2022-08-24
?
人到中年有點甜

TA貢獻1895條經驗 獲得超7個贊

如果您要使用無服務器框架部署 lambda 和 api 網關,則可以執行以下操作:

hello:
  handler: src/hello.handler
  name: hello
  events:
    - http:
        path: car/{id}/color/{color}
        method: get


查看完整回答
反對 回復 2022-08-24
?
POPMUISE

TA貢獻1765條經驗 獲得超5個贊

假設您計劃在 API Gateway 中使用 Lambda 代理集成,以下是訪問查詢參數需要執行的更改。

  • 導入(這具有所有相關github.com/aws/aws-lambda-go/eventsstructs)

  • 將 lambda 處理程序更改為func handler(request events.APIGatewayProxyRequest) (events.APIGatewayProxyResponse, error) {

  • 現在,您可以以 Map 形式訪問查詢參數并執行選擇邏輯request.QueryStringParameters

  • 當您返回 API Gateway 的響應時,請確保遵循結構,即至少返回狀態代碼以及可選的正文、標頭等。events.APIGatewayProxyResponse

  • 無需在 API 網關上進行更改/配置即可通過 Lambda 代理集成傳遞查詢參數

您可以使用自己的請求和響應,但它們需要使用和 中定義的相應鍵。structsevents.APIGatewayProxyRequestevents.APIGatewayProxyResponse

例如,在結構中添加以下內容以訪問查詢字符串參數。LambdaEvent

QueryStringParameters map[string]string `json:"queryStringParameters"`

如果您剛開始使用 AWS Lambda,請查看 AWS SAM 以保持簡單。


查看完整回答
反對 回復 2022-08-24
  • 3 回答
  • 0 關注
  • 170 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號