webservice如何实现统一登录

口今游诗人 2017-07-25 02:59:57
领导让我写个webservice接口,传一个token过来,验证token是否过期,没过期直接进入系统,过期了,跳转到登录页面,有没有类似的案例参考下啊
...全文
287 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
ink4t 2017-07-25
  • 打赏
  • 举报
回复
引用 2 楼 pany1209 的回复:
登录成功,后台生成使用算法生成token,把token写入redis设置过期时间,再把token写入cookie或者发送到前台存储到localstorage,下次访问系统从cookie或者localstorage拿到token,每次请求带上token给后台校验。。。。
正如二楼所说,在登录的时候判断redis中的token是否存在或者过期,如果没有则得登录,登录验证成功,然后生成一个token,然后保存到redis中去。

// 生成token
		String token = UUID.randomUUID().toString();
		// 保存用户到redis之前要把用户对象中的密码清空
		user.setPassword(null);
		// 把用户信息写入redis
		jedisClient.set(REDIS_USER_SESSION_KEY + ":" + token,
				JsonUtils.objectToJson(user));
		// 设置session的过期时间
		jedisClient.expire(REDIS_USER_SESSION_KEY + ":" + token,
				SSO_SESSION_EXPIRE);
		// 添加写cookie的逻辑,cookie的有效期是关闭浏览器就失败
		CookieUtils.setCookie(request, response, "TOKEN", token);

这是我做的一个项目中的一部分代码,大概思路就是这样子。
李德胜1995 2017-07-25
  • 打赏
  • 举报
回复
登录成功,后台生成使用算法生成token,把token写入redis设置过期时间,再把token写入cookie或者发送到前台存储到localstorage,下次访问系统从cookie或者localstorage拿到token,每次请求带上token给后台校验。。。。
minemine0418 2017-07-25
  • 打赏
  • 举报
回复
思路都有了还愁代码?

81,094

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧