我正在使用 backbone.js 在我的网络应用程序上进行客户端路由。
为了让这个客户端路由正常工作,我需要所有 URL 返回相同的 html 页面,然后路由将在该页面上用 JavaScript 完成。
我正在为我的静态页面和 servlet 使用 Jersey + Tomcat。如何让所有 URL 都提供同一个页面? (即所有与 MyWebbApp/App/** 相匹配的 URL 以提供我的 index.html 页面)。
提前致谢!
编辑:
我会使用什么正则表达式? 我想 我的网络应用程序/应用程序 我的网络应用程序/应用程序/ 我的网络应用程序/应用程序/其他 MyWebApp/App/其他/其他...
全部包含在内。我尝试这样做,但由于某种原因我无法获得 1 个正则表达式来涵盖所有这些情况。我得到的最接近的是:
@Path("MyWebApp/App/{some_var_name_i_never_use: .*}")
但这不包括 MyWebApp/App 或 MyWebApp/App/案例。
最佳答案
您可以对静态内容使用 Jersey 的过滤器。这是一个 blog post关于它。您只需要定义另一个过滤器来处理将所有内容映射到您的 index.html 页面。请注意,在 Jersey 2.0 中,参数名称已更改为 jersey.config.servlet.filter.staticContentRegex
。
关于jakarta-ee - 在 Tomcat 和 Jersey 中提供同一个静态页面的多个 URL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13597993/