使用角度路由重新加载页面上的错误404

时间:2016-04-15 05:58:10

标签: angularjs angular-routing

我在实际加载页面时遇到错误404。用户在ng-view中加载新模板(从路由重定向)后发生这种情况。 这就是配置路由的方式。

config(["$routeProvider", "$locationProvider", function ($routeProvider, $locationProvider) {
        $routeProvider
            .when('/', {
                templateUrl: '/templates/home.html',
                controller: 'smu72Controller'
            })
            .when('/objects', {
                templateUrl: '/templates/objects.html',
                controller: 'smu72Controller'
            })
            .when('/object/:Id', {
                templateUrl: '/templates/object.html',
                controller: 'smu72Controller'
            })
        .otherwise({
            redirectTo: "/"
        });
        $locationProvider.html5Mode(true);
    }

1 个答案:

答案 0 :(得分:0)

通过在Global.asax中重写url来解决问题如下:

protected void Application_BeginRequest(Object sender, EventArgs e)
    {
            string url = Request.Url.LocalPath;
            if (!url.Contains("api") && !System.IO.File.Exists(Context.Server.MapPath(url)))
                Context.RewritePath(ROOT_DOCUMENT);
    }