1.3.5 点击登录页面
在门户的页头点击“登录|注册”连接到用户中心的登录页面,并且携带returnUrl。
修改门户的header.html,代码如下:
[AppleScript] 纯文本查看 复制代码 <a href="javascript:;" @click="showlogin" v‐if="logined == false">登陆 | 注册</a>
showlogin: function(){ //this.loginFormVisible = true;
window.location = "http://ucenter.xuecheng.com/#/login?returnUrl="+ Base64.encode(window.location)
}
1.3.6测试
测试之前修改认证服务的配置:
修改 application.yml中cookie域名
[AppleScript] 纯文本查看 复制代码 cookieDomain: xuecheng.com
测试流程如下:
1、输入www.xuecheng.com进入系统(需要在hosts文件配置)
1、输入正确的账号和密码,提交 2、输入错误的账号和密码,提交
登录成功,观察cookie是否存储成功:
2.1 需求分析
用户登录成功在页头显示当前登录的用户名称。
数据流程如下图:
1、用户请求认证服务,登录成功。
2、用户登录成功,认证服务向cookie写入身份令牌,向redis写入user_token(身份令牌及授权jwt授权令牌)
3、客户端携带cookie中的身份令牌请求认证服务获取jwt令牌。
4、客户端解析jwt令牌,并将解析的用户信息存储到sessionStorage中。
jwt令牌中包括了用户的基本信息,客户端解析jwt令牌即可获取用户信息。
5、客户端从sessionStorage中读取用户信息,并在页头显示。
sessionStorage : sessionStorage 是H5的一个会话存储对象,在SessionStorage中保存的数据只在同一窗口或同一标签页中有效, 在关闭窗口之后将会删除SessionStorage中的数据。
seesionStorage的存储方式采用key/value的方式,可保存5M左右的数据(不同的浏览器会有区别)。
|