我正在使用Ext.Ajax.request()来访问一个PHP页面,该页面为我提供了一些用户特定信息作为登录过程的一部分。基本上我想在ExtJS中存储一些变量(cookie,会话信息等)。我创建了一个包含所需字段的模型和一个商店来保存它。即使身份验证只进行一次,我想确保在给定时间内只有一个用户信息的副本。我想使用该信息再次访问PHP而无需再次进行身份验证(cookie)。 这是我如何获取并存储它:
Ext.Ajax.request({
url: 'api/get.php',
params: {
user : usr,
pass : pass
},
success: function(response)
{
var text = response.responseText;
var jtext = Ext.JSON.decode(text);
var login = jtext.loginData;
model.set('username', login.username);
model.set('cookie', login.cookie);
model.set('password', login.password); // doing this feels soo wrong!
store.insert(0, model);
store.sync();
console.log(store.getCount());
}
});
更好的方法是什么?由于我现在使用的是外部(对PHP)服务,我只检查用户/传递是否正确,如果是,我将它从客户端传递给PHP函数,它们做任何与它们有关的事情。外部服务,每次使用它们进行身份验证。或者,我可以每次将cookie传递给PHP,然后将其传递给PHP。我还可以将JS< - > PHP cookie映射到PHP< - >服务cookie,这样会更好。
干杯!
答案 0 :(得分:0)
Ext.util.Cookies.set('myObj',Ext.encode(obj))
使用类似的内容以及何时使用
id = (Ext.decode(Ext.util.Cookies.get('myObj'))).id