在AWS API Gateway中,可以通过集成请求路径重写为REST API定义在API Gateway中的路径提供API终端用户友好的路径,并将它们映射到后端服务的真正路径。当请求路径具有多个路径部分时,需要使用表达式将其重写为后端服务可以理解的形式。
以下是使用AWS API Gateway中Lambda集成中请求路径重写多个路径部分的示例代码:
参考代码:
重写代码如下:
# Use a regex to extract the values from the path
import re
path_regex = '^/.*?/([^/]+)(/.*)?$'
path_match = re.match(path_regex, event['path'])
if path_match:
resource_id = path_match.group(1)
path_suffix = path_match.group(2) or '/'
在这个例子中,使用正则表达式将请求路径中的第二个路径部分提取出来,并将它们组合成可传输给后端服务的格式。重写后的路径为'/{resource_id}{path_suffix}”。
为了测试这个示例代码,可以使用POSTMAN在API Gateway的REST API中指定路径和任何参数,以验证路径重写是否按预期工作。