播放+ AngularJS + HTML5Mode

时间:2014-10-30 18:22:54

标签: angularjs playframework-2.0 angular-ui-router

我正在设置一个Play Framework 2.3服务器,并希望使用没有hashbang URL的AngularJS + ui-router。只要我使用hashbang URL,路由显然工作正常,但我不能让html5mode工作。 Play总是给我看404.我怎么能这样做?

1 个答案:

答案 0 :(得分:1)

好的,我得到了它的工作:

(我正在使用play-yeoman)

GET     /                controllers.Yeoman.index(name="")
GET     /results         controllers.Yeoman.any
GET     /results/*any   controllers.Yeoman.routing(any)
->      /                yeoman.Routes

GET     /assets/*file               controllers.Assets.at(path="/public", file)

object Yeoman extends Controller {

  def index = Action.async {
    request =>
          Assets.at("index.html").apply(request)
  }
  def any = Action.async {
    request =>
      Assets.at("index.html").apply(request)
  }
  def routing(path:String) = Action.async {
    request =>
      Assets.at("index.html").apply(request)
  }
}

因此angular.js负责路由过去/结果。它也在处理/结果路径,但如果我使用/ *任何它会弄乱我的其他路线。希望它有所帮助!