Java重定向到错误的URL [重复]

问题描述 投票:0回答:1

我正在使用angularjs,并且有一个非常基本的应用程序...

let app = angular.module('GHoF', [
  'ngRoute'
]);

app.config(function Config($routeProvider) {

  // Routes

  console.log($routeProvider);
  $routeProvider
    .when('/applications', {
      templateUrl: 'app/pages/myApplications/myApplications.html',
      controller: 'MyApplicationsCtrl'
    })
    .otherwise({
      redirectTo: 'app/pages/auth.html'
     })

});

HTML

<html lang="en" ng-app="GHoF">
<head>
    <script src="node_modules/angular/angular.js"></script>
    <script src="node_modules/angular-route/angular-route.js"></script>
    <script src="app/app.js"></script>
    <title>Home</title>
</head>
<body>
    <main ng-view></main>
</body>

问题是它将我重定向到错误的URL。

http://127.0.0.1:8080/#!/app/pages/auth.html

我不知道为什么,但是它在URL中显示为/#!。这是一个非常基本的应用...

javascript angularjs ngroute
1个回答
0
投票

您需要启用HTML5Mode才能摆脱哈希爆炸。首先,您需要在索引文件中添加基本href(我通常将其直接放在开头的<head>标签下面):

<base href="/" />

然后在您的配置中,您应该通过$ locationProvider启用它:

app.config(function Config($routeProvider, $locationProvider) {
  $locationProvider.html5Mode(true);
  $routeProvider
    .when('/applications', {
      templateUrl: 'app/pages/myApplications/myApplications.html',
      controller: 'MyApplicationsCtrl'
    })
    .otherwise({
      redirectTo: 'app/pages/auth.html'
    })
});
© www.soinside.com 2019 - 2024. All rights reserved.