Session ExtJS4会话管理
我有一个基于web的应用程序,其中必须管理用户会话 在app.js中,我将启动配置用作:Session ExtJS4会话管理,session,extjs,extjs4,extjs-mvc,Session,Extjs,Extjs4,Extjs Mvc,我有一个基于web的应用程序,其中必须管理用户会话 在app.js中,我将启动配置用作: launch: function(){ Ext.create('myproject.view.LoginForm') } LoginForm:将显示登录对话框,并调用登录控制器与服务器通信,以验证用户提供的凭据 因此,当用户刷新页面时,Extjs要求登录,这是因为我没有在这里检查会话,会话详细信息应该如何存储在Extjs客户端中并进行检查以避免提示用户登录,除非用户已注销?以及如何管理用户会话?用
launch: function(){
Ext.create('myproject.view.LoginForm')
}
LoginForm:将显示登录对话框,并调用登录控制器与服务器通信,以验证用户提供的凭据
因此,当用户刷新页面时,Extjs要求登录,这是因为我没有在这里检查会话,会话详细信息应该如何存储在Extjs客户端中并进行检查以避免提示用户登录,除非用户已注销?以及如何管理用户会话?用户身份和会话信息必须存储在服务器端。通常,一旦用户成功进行身份验证,就会设置cookie,以避免再次提示用户。此cookie从服务器发送,并自动存储在浏览器中,并在页面刷新时发送回服务器进行检查。服务器应验证cookie是否正确,以允许用户继续 根据@existdisle下面的注释
在启动方法中,只需在创建登录表单之前运行会话检查。无论这是cookie检查还是直接向服务器发出的请求,会话检查的结果都可以触发登录表单的创建,或者您用于创建应用程序其余部分的任何其他逻辑都可以使用 内部登录控制器
// Storing user details in session / cookies
Ext.util.Cookies.set("key", value);
退出按钮时
// remove user details from cookies
Ext.util.Cookies.set("key", value);
在App.js中
autoCreateViewport: false,
launch: function(){
var key= Ext.util.Cookies.get("key");
if (key=== undefined || key== 'null' || key== null || key.length <= 0){
// load login UI as user is not logged in
Ext.create('app.view.LoginForm');
}
else {
// load main UI as user is already logged in
Ext.create("app.view.Viewport");
}
}
autoCreateViewport:false,
启动:函数(){
var key=Ext.util.Cookies.get(“key”);
如果(key==undefined | | key==null | | | key==null | | key.length Dbrin,您是r8,但在extjs中,当我刷新页面时,应用程序会将我重定向到登录页面,因为我有配置启动:function(){Ext.create('myproject.view.LoginForm')},在服务器端,我不会使任何会话无效,但每次ext询问我详细信息时,如何处理此问题在启动方法中,只需在创建登录表单之前运行会话检查。无论这是cookie检查还是直接向服务器发出的请求,会话检查的结果都可以触发登录的创建表单,或创建应用程序其余部分的任何其他逻辑。例如,启动:function(){somecheck:function(){if(loggedin){//build rest of app}其他{//show login form}}