在新浏览器中打开链接,将我重定向到 Angular JS 中的登录页面



我有AngularJS网站,其中包含很少的超链接。每当我尝试在同一选项卡中打开链接时,它都可以正常工作,但是每当我尝试在新选项卡中打开链接时,它都会将我重定向到登录页面。

路由控制器.js

var app = angular.module("appHome", ['ui.router']);
app.config(function ($stateProvider, $urlRouterProvider) {
$urlRouterProvider.otherwise('/login');
$stateProvider
.state('introduction', {
url: '/',
views: {
'mainview':
{
templateUrl: 'HomeLoginPages/Login.html',
controller: 'ctrlLogin'
}
}
})
.state('login', {
url: '/login',
views: {
'mainview':
{
templateUrl: 'HomeLoginPages/Login.html',
controller: 'ctrlLogin'
}
}
})
.state('home.eventlist.requestdetail', {
url: '/requestdetail',
params: { paramOne: "defaultValueOne", paramTwo: "defaultValueTwo", paramThree: "defaultValueThree", paramFour: "defaultValueFour" },
views: {
'homedetailview@home':
{
templateUrl: 'RequestPages/DetailedRequest.html',
controller: 'ctrlRequestDetail',
}
}
})
})

网页文件

<form class="form-main">
<div class="div-main">
<div class="gridBigStyle" ui-grid="gridEventList" ui-grid-pagination>
</div>
</div>
</form>

控制器.js

var myApp = angular.module('appHome');
myApp.controller("ctrlEventList", ['$scope', 'MetadataOrgFactory', function ($scope, MetadataOrgFactory) {
$scope.gridEventList = {
data: 'eventlistdata',     
columnDefs: [
{ field: 'SiteEventNumber', displayName: 'Event Number' },
{
field: 'RequestNumber', displayName: 'Event Request',
cellTemplate: '<a ui-sref=".requestdetail({paramOne:row.entity.RequestId, paramTwo:row.entity.EventId, paramThree: 1,paramFour: defaultValueFour})" class="ui-grid-cell-contents">{{COL_FIELD}}</a>'
},
]
}
}]);

我在用户登录期间使用令牌身份验证。令牌始终有效,但它仍然将我重定向到登录页面。

我已经将登录信息保存在所有选项卡中使用的本地存储变量中。当用户注销时,我已明确将值设置为空白,以便所有其他选项卡页面将重定向到登录页面。我希望这个答案能帮助其他人。

相关内容

  • 没有找到相关文章

最新更新