一些奇怪的重定向到http:// localhost /#

时间:2015-10-19 05:47:42

标签: angularjs twitter-bootstrap asp.net-mvc-5 iis-8 smartadmin

我遇到了一些奇怪的自动重定向问题,在此期间,JavaScript上下文中存在一些未处理的异常;它会毫无理由地自动重定向到我的Windows 10计算机下的http://localhost/#(通常会在Chrome控制台标签下捕获,但现在它只是重定向到localhost)。

我检查了一些事情:

  1. 尝试在Mozilla Firefox上重现此问题,同样的结果发生了。所以可能不是浏览器问题。
  2. 重新启动Visual Studio,重新启动IIS。不工作。
  3. 检查了IIS错误重定向,没有错(默认情况下没有设置为任何特殊的,实际上我怀疑这是可能实际重定向JavaScript级别错误的部分)。
  4. 我无法判断AngularJS路由问题是否存在问题,实际上我也没有设置/使用路由模块。

2 个答案:

答案 0 :(得分:0)

检查您的应用程序模块是否有routeProvider,否则可能由于路由不匹配而产生。

例如:

 when('/', {
    title: 'Home',
    templateUrl: 'welcome/get_home_view',
    controller: 'HomeCtrl'
  }).

为任何子链接提供准确的路径(所有'/','#',作为您的应用程序路径定义)。

如果你遗漏任何东西,你将会破坏到基本网址(locachost /)

答案 1 :(得分:0)

对于重定向,你必须使用路由模型。 在项目中包含angular-route.js。 要根据用户操作执行redicrection,您必须使用$ routeProvider。 routerprovider如何在角度应用程序中工作的示例

var sampleApp = angular.module('TestApp', []);

sampleApp .config(['$routeProvider',
  function($routeProvider) {
    $routeProvider.
         when('/', {
        templateUrl: 'templates/welcome.html',
        controller: 'welcomeCtrl'
      }).
      when('/home', {
        templateUrl: 'templates/home.html',
        controller: 'homeCtrl'
      }).
      when('/dashborad', {
        templateUrl: 'templates/dashborad.html',
        controller: 'dashboradCtrl'
      }).
      otherwise({
        redirectTo: '/home'
      });
  }]);

这里当没有任何选项匹配时,它将重定向到主页。 希望它会对你有所帮助。