2015-11-30 2 views
0

Я пытаюсь перезагрузить страницу из ручное ее закрытие браузера, но он не работает, и говоритAngularjs маршрутизации не работает после перезагрузки страницы вручную

Cannot GET /rate/4 

Мой маршрут:

angular.module('routing') 

.config(function ($routeProvider, $locationProvider) { 

    $routeProvider 

    .when('/', { 
     templateUrl: 'app/views/index.html' 
    }) 

    .when('/rate/:cid', { 
     templateUrl: 'app/views/rate.html' 
    }) 


    .otherwise({ 
     'redirectTo': '/' 
    }); 

    $locationProvider.html5Mode(true); 

}); 

Мое предположение заключается в том, что при перезагрузке основной (index.html) не загружается, это мой базовый html-файл.

+0

Вам понадобится конфигурация на стороне сервера, так как вы используете 'html5mode'. –

+0

@ AlbertoI.N.J. Я новичок в этом ... не уверен, что у вас значит – user3100209

+0

Какой сервер вы используете? –

ответ

0

У вас нет угловой проблемы, у вас есть проблема с сервером.

Вы по существу работаете с одностраничным приложением.

Когда сервер получает запрос на rate/4, он должен вернуть index.html (или как бы там ни было название вашей главной страницы). .

Как решить это будет зависеть от того, какую платформу вы реализовали свой сервер в

Например, если вы работаете в экспресс-сервер узла, вы бы иметь этот вид маршрутизации кода:

app.get(/^\/rate\/.*/, function(req, res) { 
    // This matches a known pattern for a client-side route 
    res.sendFile(__dirname + '\\public\index.html'); 
}); 
+0

могу ли я использовать весенний сервер? – user3100209

+0

@ user3100209 - Я никогда не использовал весенний сервер. Если это современная структура веб-сервера, определенно вы сможете настроить маршрутизацию. –

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