当用户下订单时需要用户登录,使用拦截器实现用户登录。登录成功后跳转到用户要访问的页面。
门户系统整合sso
在门户系统点击登录连接跳转到登录页面。登录成功后,跳转到门户系统的首页,在门户系统中需要从cookie中 把token取出来。所以必须在登录成功后把token写入cookie。并且cookie的值必须在系统之间能共享。
Cookie共享:
1、Domain:必须是相同的。
例如有多个域名:
www.taotao.com
Sso.taotao.com
Search.taotao.com
需要设置domain为:.taotao.com
2、设置path:/
工具类
如果是localhost不要设置domain。直接设置path就可以了。
工具类可以放到taotao-common中。
在登录接口中添加写cookie的逻辑
首页取cookie信息
从cookie中取token,在页面中根据token取用户信息,调用sso系统的服务来完成。需要使用jsonp调用。
登录成功:
模拟拦截url
需求:当访问商品详情页面时强制用户登录。(当有订单系统后就改为订单系统的url。)
创建拦截器
1、需要实现HandlerInterceptor接口。
2、实现拦截逻辑
3、需要在springmvc.xml中配置。
用户登录Service
功能:根据token换取用户信息,需要调用sso系统的服务。返回TbUser对象。如果没有就返回null。