路由
API7 网关可以以两种主要模式运行:
- 应用层代理:在此模式下,API7 网关充当 HTTP 请求和响应的中介,在 OSI 模型的应用层(第 7 层)运行。路由(Routes)用于定义如何处理这些 HTTP 请求。
- 流代理:API7 网关也可以作为流代理运行,在 OSI 模型的传输层(第 4 层)运行。此模式非常适合处理 TCP 和 UDP 等协议。对于流代理,四层路由(stream routes)用于定义如何将传入的 TCP/UDP 连接路由到后端服务。
路由根据配置的规则匹配客户端请求,加载并执行相关插件,并将请求转发到指定的上游节点。一个路由必须属于单个服务,它不能被孤立存在或跨多个服务共享。
路由的工作原理
你可以将 API7 网关视为你的 API 的智能流量导向器。当请求到达时,API7 网关会检查其定义的路由以寻找最佳匹配,并将请求引导到适当的后端服务。
假设你有一个 API,其中包含 /pet 的路由。该路由可能匹配诸如 GET /pet 或 POST /pet/create 之类的请求。该路由还可以配置为在将请求转发到适当的后端服务器之前应用特定的插件(例如,用于速率限制或身份验证)。
下图说明了如何将两个 HTTP 请求发送到 API7 网关,然后根据路由中配置的规则转发它们:
