2014-10-30 5 views
1

Я настраиваю сервер Play Framework 2.3 и хотел бы использовать AngularJS + ui-router без URL-адресов hashbang. Маршрутизация явно работает нормально, пока я использую URL-адреса hashbang, но я не могу заставить html5mode работать. Игра всегда показывает мне 404. Как я могу это сделать?Play + AngularJS + HTML5Mode

ответ

1

Хорошо я получил его на работу:

(я использую плей-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 заботится о маршрутизации прошлом/Результаты. Он также заботится о пути/results, но если я использую/*, то он испортит мои другие маршруты. Надеюсь, поможет!

+0

Этот вопрос может быть полезен любому, кто ищет игру 2.5 http://stackoverflow.com/questions/42495163/angular-html5mode-playframework-gives-404-when-refreshed/42495164#42495164 – ObjectiveTruth

Смежные вопросы