是否可以使用通配符创建路由?

Is it possible to create a route using a wildcard?

是否可以启用属于特定上下文根的所有路由?

例如,假设我的上下文根如下:

myapp.apps.pivotal.com/head

我能否绑定一个自动允许访问以下内容的路由:

myapp.apps.pivotal.com/head/login.do
myapp.apps.pivotal.com/head/login.jsp
myapp.apps.pivotal.com/head/test.do
myapp.apps.pivotal.com/head/test.do?jsessionid=0cca44ba4133b113
myapp.apps.pivotal.com/head/login.do?jsessionid=0bba7a7a788b31

对于上下文,我正在尝试使用 H2 数据库,但在浏览器中连接到它时遇到问题。我可以进入 /h2-console 页面,但是当我尝试 POST 到 login.dotest.do 时,它一直抛出一个 Whitelabel Error Page

如果您创建一个路由,myapp.example.com/foo并将该路由映射到应用程序 A。

例如:cf create-route my-space example.com --hostname myapp --path foo

myapp.example.com/foomyapp.example.com/foo/bar/foo 下的任何请求都将路由到应用程序 A。

您需要注意 CF 上的上下文路径路由不会重写 URL。因此,使用上面的示例,myapp.example.com/foo/bar 的请求被传递给应用程序 A,就像 /foo/bar 一样。 /foo 没有被剥离。

当您配置应用程序 A 时,您需要让它侦听请求 /foo/bar。如果它只是在监听 /bar 你会得到一个 404。

如果您希望 /foo 被剥离 Spring Boot 可以为您完成此操作。您只需要在 application.properties.

中设置 server.contextPath=/foo

至于你的 H2 问题,没有足够的信息让我发表评论。如果以上没有帮助,请添加更多信息,例如您在尝试访问 H2 控制台时看到的信息。 whitelabel 错误页面上有有用的信息,所以一定要分享。

希望对您有所帮助!