|
|
@@ -44,6 +44,36 @@ Ext.define('saas.override.data.Connection', {
|
|
|
this.setupServerOptions(options);
|
|
|
}
|
|
|
return this.callParent([options]);
|
|
|
- }
|
|
|
+ },
|
|
|
+ onRequestComplete: function(request) {
|
|
|
+ let headers = request.result.getAllResponseHeaders(),
|
|
|
+ Authorization = headers['authorization'];
|
|
|
+
|
|
|
+ if(Authorization) {
|
|
|
+ // 如果返回了token则刷新token
|
|
|
+ let headers = Ext.Ajax.getDefaultHeaders() || {};
|
|
|
+ let session = saas.util.State.get('session');
|
|
|
+
|
|
|
+ headers['Authorization'] = Authorization;
|
|
|
+ Ext.Ajax.setDefaultHeaders(headers);
|
|
|
+
|
|
|
+ session.token = Authorization;
|
|
|
+
|
|
|
+ saas.util.State.set('session', session);
|
|
|
+
|
|
|
+ let sessionStr = session ? JSON.stringify(session) : '';
|
|
|
+
|
|
|
+ if (typeof require === 'function') {
|
|
|
+ let ipc = require('electron').ipcRenderer;
|
|
|
+ ipc.send('session.change', sessionStr);
|
|
|
+ }else {
|
|
|
+ //解析session 把data作为sessionStr
|
|
|
+ sessionStr = session ? JSON.stringify(session.data) : '';
|
|
|
+ const frame = window.frames[window.frames.length - 1];
|
|
|
+ frame.postMessage(sessionStr, '*');
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+
|
|
|
});
|
|
|
|