routes - 是否可以将所有请求映射到某个路径下的路由,即“/api/**”到pcf中的不同应用程序?
问题描述
正如标题所示,我有一个前端应用程序和一个后端 API。每个都有自己的清单在自己的容器中的 pcf 中运行。他们在同一个起源。我想将所有 api 请求路由到后端 api,并将所有其他请求路由到前端应用程序。这目前可以通过 pcf cli 或应用管理器中的 map-route cmd 实现。对于后端 api 中的每个端点,我将端点映射到路由 'api/path1'、'api/path2'、'api/path3'、'api/path4'、'api/path5'、api/path6 ', 'api/path7', 'api/path8', 'api/path9'...... 除了唯一的问题是我必须列出我想要映射的每个端点. 不支持通配符..至少我无法让它们工作。有任何想法吗?
解决方案
对于后端 api 中的每个端点,我将端点映射到路由 'api/path1'、'api/path2'、'api/path3'、'api/path4'、'api/path5'、api/path6 '、'api/path7'、'api/path8'、'api/path9'
如果下面的所有内容都/api/
进入您的后端应用程序,那么就没有必要像这样映射单个路径。映射到您的后端应用程序就足够了/api/
,并且以开头的每个请求都/api/
将转到您的后端应用程序。
关键是所有内容都/api/
进入后端应用程序。如果你想拥有/api/v1
, /api/v2
,/api/v3
和/api/v4
去后端并/api/something_else
去另一个应用程序,那么它会更复杂,因为它们都以开头,/api/
然后你必须在 CF 中添加单独的路由。
不支持通配符..至少我无法让它们工作。
正确的。没有特定的通配符,但匹配基本上是“开始于”匹配。如果请求的路径以您添加到路由的路径开头,那么它将匹配。
https://www.example.com/path1
例如: matches的路线https://www.example.com/path1
,https://www.example.com/path1/subpath
甚至https://www.example.com/path1/sub/sub/sub/sub/path
因为它们都以/path1
.
有关详细信息,请参阅此处的“使用路径创建 HTTP 路由”。
https://docs.cloudfoundry.org/devguide/deploy-apps/routes-domains.html#create-route
推荐阅读
- apache-flex - 如何导入 flex iframe 组件?
- php - Ninja Forms:在 PDF 提交中显示复选框列表和文件上传值
- javascript - 如何将活动类添加到 ReactJS 中的单击项目
- sql-server - 如何使用 SSIS 加载隐藏的特殊字符
- google-slides-api - 如何获得 Google Slides 表格行的实际高度?
- docker - 更新 docker 服务时出错
- android - 如何在 Retrofit for Android 中外部化基本 URL
- javascript - 为什么我的 mat-error 只有在我单击按钮两次时才会显示?
- javascript - 用户输入时如何添加千位分隔符?
- karate - 空手道:有没有办法将函数应用于示例:变量?