2014-10-30 43 views
1

我正在设置Play Framework 2.3服务器,并希望使用AngularJS + ui-router而不使用hashbang URL。只要我使用hashbang URL,路由显然工作正常,但我无法获得html5mode的工作。玩总是告诉我一个404.我该怎么做?Play + AngularJS + HTML5Mode

回答

1

好,我得到它的工作:

(我用的播放自耕农)

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负责路由过去的/结果。它也照顾/结果路径,但如果我使用/ *任何它弄乱了我的其他路线。希望能帮助到你!

+0

此问题可能有助于任何人寻找玩2.5 http://stackoverflow.com/questions/42495163/angular-html5mode-playframework-gives-404-when-refreshed/42495164#42495164 – ObjectiveTruth 2017-02-27 20:29:22

相关问题