【发布时间】:2014-08-19 08:02:24
【问题描述】:
我正在开发一个同时提供 JSON api 和单页应用程序的 Play Framework 2.2 应用程序。对于单页应用,我使用的是 Backbone.js,我想支持 HTML5 History api。
目前,Play 通过 index.html 文件为单页应用程序提供服务,并且单页应用程序中的所有路由都是通过基于哈希的路由完成的。以下是我正在使用的路线:
GET /app/*file controllers.Assets.at(path="/public/app/src", file)
单页应用处理的示例 URL 是:
/app/index.html#/some/url
我希望能够将 all 以/app/ 开头的 URL 路由到我的 index.html 文件,这样上述 URL 将变为以下 URL,并且仍由我的索引处理.html 文件:
/app/some/url
我的想法是使用如下路线:
GET /app/*anything controllers.Assets.at(path="/public/app/src", file="index.html")
但是,Play 对我不使用“anything”路由不满意,所以我收到以下编译错误:Missing parameter in call definition: anything。
在 Play 2 中是否有任何方法可以有一个“通配符”路由,如上述路由到 单个静态文件?
【问题讨论】:
标签: playframework-2.0 url-routing single-page-application