如何针对给定状态强制请求服务器?

时间:2016-01-26 13:43:16

标签: javascript angular-ui-router

当用户导航到/admin/logout时,我想确保实际发出请求,而我会被重定向到/admin,因为我有一个.otherwise定义:

$urlRouterProvider.otherwise( "/admin" );

当我为/admin/logout路由定义状态时,会调用状态,但这仍然不会导致从服务器实际请求/admin/logout

我想避免创建一个控制器并通过/admin/logout调用$http,因为对于我实际想做的事情来说,这似乎过于复杂。

1 个答案:

答案 0 :(得分:0)

我最终只是在调用状态时重新加载页面。

这里简单的关键是简单地提供window.location.reload作为状态的控制器:

function configureApplication( $stateProvider, $locationProvider, $urlRouterProvider) {
    $locationProvider.html5Mode( true );

    $urlRouterProvider.otherwise( "/admin" );

    $stateProvider
        .state( "logout", {
            url        : "/admin/logout",
            controller : window.location.reload.bind( window.location, true )
        } );
}