玩框架2:摆脱网址中的初始html页面

时间:2012-10-15 01:02:20

标签: redirect playframework routes playframework-2.0

我已经定义了以下路由文件:

GET     /           controllers.Application.app

# web service entries...
GET     /api/users  controllers.Users.list
[...]

# Map static resources from the /public folder to the /assets URL path
GET     /*file      controllers.Assets.at(path="/public", file)

在我的Application.app操作中,我只是重定向到index.html

def app = Action {
  Redirect(routes.Assets.at("index.html"))
}

所以当我在http://mydomain访问我的应用时,我被重定向到http://mydoamin/index.html,然后将##个想法添加到该位置(这是一个网页应用)

我想摆脱index.html文件,而是被重定向到http://mydoamin/#ideas

有可能吗?

2 个答案:

答案 0 :(得分:2)

在路线文件中使用此项:

GET     /     controllers.Assets.at(path="/public", file="index.html")

所以你不需要触摸任何控制器。

答案 1 :(得分:1)

只是一个指针:您可以尝试从Asset控制器获取Html代码,然后返回带有Html内容的Ok Result。

为此,您可以尝试查看如何在test helpers中调用控制器,以及如何获取此调用的结果和正文。

粗略(未经测试):

def app = Action {
    request => {
        val result = controllers.Assets.at("public","index.html")(request)
        val html = contentAsString(result)

        Ok(html)
    }
}