开发之登录流程
<p>
1.浏览器js 请求java的islogin 接⼝
2.java 从session 中获取当前⽤户
3.能获取到说明已经登录
4.不能获取到说明没有登陆
5.返回⼀个result
8.已经登录的就不说了,说下没有登陆情况
9.浏览器js根据de == 400 判断没有登录
10.在浏览器端进⾏跳转 window.location.href = direct_url
12.
13.浏览器js直接进⾏跳转了 get请求
14.这⾥请求的是的服务器 response_type告诉我现在是想要code
15.知道了之后,进⾏⼀系列判断,就能在 12 那个页⾯上进⾏再次跳转,你可以理解成这样:
16.你get请求 12 的地址后,的控制层 拿到你传进来的⼏个参数,appid 是认证过的,好了 那就没问题了,服务器⽣成⼀
个随机的code,然后把这个code 和请求传过来的redirect_url,state 原封不动的⼀并传到了返回的页⾯上,页⾯上的js⽆论通过什么样的形式都能获取到刚刚传过来的⽣成的code和redirect_url以及state,这样⼀来js 就能在这个页⾯上直接进⾏
window.location.href = 传过来的redirect_url?code=[传过来的code]&state=[传过来的state]
17.到这⾥就简单了,因为redirect_url 和state 是原封不动的传过来的,所以到现在的请求连接就是我们⾃⼰⽹站了。并且带着参数
code state
18.我们⾃⼰的服务器要针对redirect_url 写响应的controller
19.⽐如我们这⾥的连接是 ake/weixin/login?code=xxxx&state=xxxxx
20.这个时候就进⼊到我们的业务层的了
21我们在controller 中能根据code 获取access_token,是在controller中通过httpClient 请求如下连接完成的:(注意是在
controller层请求的)
22.
23.上⾯的这个请求中填上⾃⼰的appid,sectrt 以及controller传过来的CODE,就能获取到access_token开发程序
24.这是正确时返回的数据json
25.{ "access_token":"ACCESS_TOKEN",
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论