Shiro+SpringBoot做微信小程序登录的坑

学海无涯,旅“途”漫漫,“途”中小记,如有错误,敬请指出,在此拜谢!

一、前情提要

最近在研究Shiro,和朋友讨论的时候,听说在做微信小程序的时候,Shiro登录验证不好使。便自己验证了一下,确实不好用。去百度查询了半天,并没有找出解决方案,不得不吐槽百度,两三页的搜索内容都是一个模子出来的。研究了好几天才研究出来。

二、分析

查了下源码,结合一些大牛的分析。Shiro的登陆验证方式是,登陆的时候,后台会自动的向浏览器的Cookies里面放置一些参数。示例如下。
在这里插入图片描述
而对于微信小程序,正常使用的时候,不像浏览器一样,是使用Cookies的。所以小程序无法将Cookies再返回给后台,导致后台获取不到参数,认为未登录。所以在微信小程序中获取到这些Cookies,再从header中传过去即可。此处注意,登录所需要的参数为"JSESSIONID"。如果你还需要其他参数,那也一并发过去即可(比如我的Shiro增加了记住我的功能,还需要传rememberMe。当然你可以最暴力的方式,把所有Coolies全传过去)。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章