I aws创建一个2 api网关
- 第一个
https://xx.xx-api.us-east-1.amazonaws.com/v1/uploadapi/?search=all
那么我的lambda函数将在下面调用
searchone = es.search(index="my-index", body={"query": {"match_all": {}}})
return searchone
- 第二个
https://xx.xx-api.us-east-1.amazonaws.com/v1/uploadapi/?search=matchphrase=name_computer
searchtwo = es.search(index="my-index", body={"query": {"match": {"name":"computer"}}})
return searchtwo
基本上需要创建single
lambda函数
如果api url是第一个,则返回searchone
如果api url为第二个,则返searchtwo
免责声明?我需要为以上两个api的创建单独的Lambda函数吗
搜索=全部
搜索=匹配短语=名称_计算机
搜索参数用于这样的条件,即,如果服务器需要以某种特定方式处理请求,则通知服务器您可以在lambda函数中访问它们
在我们继续前进之前,我建议您考虑以下模式:
搜索=全部-->search_type=match_all
search=matchphrase=name_computer->search_type=match_some&match_phrase=名称计算机
现在,如果您研究传递给lambda函数的event
对象,您将在event.requestContext.queryStringParameters
中找到这些查询参数。它看起来像这样:
{
<...>
'resource': '/v1/uploadapi',
'requestContext': {
'queryStringParameters': {
'search_type': 'match_some',
'match_phrase': 'name_computer'
},
<...>
}
您现在可以使用它在其上构建逻辑