初学有感,希望各位大佬在下面批评指教,晚辈万分感激!
----------------------------------------------------------------------------------------------------------------------------------
单点登录的实现其实就是cookie与redis配合模拟一个session,具体思路:
用户登录后,将用户名保存在cookie中,并且在redis中有所保存,二者均设过期时间。cookie就将用户信息保存在本地浏览器。
可以写段js,该页面只要加载,该js就加载,并且去浏览器查找对应的cookie,找到发给单点登录工程,单点登录工程拿着该cookie中的用户名去redis中查询相关用户信息,若一切顺利,返回给该js。不顺利的原因可能是用户过期或者其他什么原因,重新登录,保存cookie和redis。
获取cookie的js代码:其中token为cookie的name
var E3MALL = {
checkLogin : function(){
var _ticket = $.cookie("token");
if(!_ticket){
return ;
}
$.ajax({
url : "http://localhost:9999/user/token/" + _ticket,
dataType : "jsonp",
type : "GET",
success : function(data){
if(data.status == 200){
var username = data.data.username;
var html = username + ",欢迎来到宜立方购物网!<a href=\"http://www.e3mall.cn/user/logout.html\" class=\"link-logout\">[退出]</a>";
$("#loginbar").html(html);
}
}
});
}
}