|
|
@@ -73,7 +73,13 @@ Ext.define('saas.view.viewport.ViewportController', {
|
|
|
// There is no authenticated user, let's redirect to the login page but keep track
|
|
|
// of the original route to restore the requested route after user authentication.
|
|
|
me.originalRoute = route;
|
|
|
- me.redirectTo('login', {replace: true});
|
|
|
+ //没有session时 判断cookie中的uid
|
|
|
+ var hasValidCookie = Ext.util.Cookies.get('uid')?me.getAccountCookie():false;
|
|
|
+ if(!hasValidCookie){
|
|
|
+ me.redirectTo('login', {replace: true});
|
|
|
+ }else{
|
|
|
+ me.redirectTo('main', {replace: true});
|
|
|
+ }
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
@@ -85,6 +91,44 @@ Ext.define('saas.view.viewport.ViewportController', {
|
|
|
}
|
|
|
},
|
|
|
|
|
|
+ getAccountCookie:function(){
|
|
|
+ var hasValidCookie = false;
|
|
|
+ Ext.Ajax.request({
|
|
|
+ url: 'http://192.168.253.31:8560/api/auth/info',
|
|
|
+ withCredentials: true,
|
|
|
+ async:false,
|
|
|
+ dataType: 'json',
|
|
|
+ headers:{
|
|
|
+ 'Authorization':'',
|
|
|
+ 'Access-Control-Allow-Origin': '<origin> | *'
|
|
|
+ },
|
|
|
+ method: 'GET',
|
|
|
+ success: function(response, opts) {
|
|
|
+ var res = Ext.decode(response.responseText);
|
|
|
+ var data = res.data;
|
|
|
+ var token = data.token;
|
|
|
+ data.expire = token.expire;
|
|
|
+ data.timestamp = token.timestamp;
|
|
|
+ data.token = token.token;
|
|
|
+ delete data['token'];
|
|
|
+ if(data.conpanyId){
|
|
|
+ session = data? saas.model.Session.loadData(data) : null;
|
|
|
+ if (session && session.isValid()) {
|
|
|
+ me.setRequestToken(session.get('token'));
|
|
|
+ me.saveSession(session);
|
|
|
+ }
|
|
|
+ hasValidCookie = true
|
|
|
+ }else{
|
|
|
+ window.location.href = Ext.manifest.server.accountCenter
|
|
|
+ }
|
|
|
+ },
|
|
|
+ failure: function(response, opts) {
|
|
|
+ showErrorToast('解析cookie失败:'+response.message)
|
|
|
+ }
|
|
|
+ });
|
|
|
+ return hasValidCookie;
|
|
|
+ },
|
|
|
+
|
|
|
setRequestToken: function(token) {
|
|
|
var headers = Ext.Ajax.getDefaultHeaders() || {};
|
|
|
if (token) {
|