登录
首页 >  Golang >  Go问答

AWS API Gateway HTTP API如何传递字符串查询参数?

来源:stackoverflow

时间:2024-04-15 12:27:28 204浏览 收藏

怎么入门Golang编程?需要学习哪些知识点?这是新手们刚接触编程时常见的问题;下面golang学习网就来给大家整理分享一些知识点,希望能够给初学者一些帮助。本篇文章就来介绍《AWS API Gateway HTTP API如何传递字符串查询参数?》,涉及到,有需要的可以收藏一下

问题内容

所以我正在制作一个应用程序并需要aws api gateway。我想使用 http api 而不是 rest api。我的代码如下所示

package main

import (
    "database/sql"
    "fmt"
    "strings"

    "github.com/aws/aws-lambda-go/lambda"
    _ "github.com/lib/pq"
)

here I make a connection to the database


func 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 不工作。 感谢您的帮助。


正确答案


如果您使用无服务器框架部署 lambda 和 api-gateway,您可以执行以下操作:

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

我不熟悉 apigw 的无服务器框架,但操作 querystring 参数已内置于 apigw 控制台中。只需登录 aws 并搜索 apigateway。编辑您的 http api 并从左侧菜单中选择 integrations。选择映射到您的 lambda 函数的集成,然后编辑右侧的 parameter mappings

到这里,我们也就讲完了《AWS API Gateway HTTP API如何传递字符串查询参数?》的内容了。个人认为,基础知识的学习和巩固,是为了更好的将其运用到项目中,欢迎关注golang学习网公众号,带你了解更多关于的知识点!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>