一、该问题的重现步骤是什么?
短信验证成功后,我将保存到user表的信息通过以下语句得到token信息:
TokenInfo tokenInfo = SecureUtil.createJWT(user, "", "", "access_token")
2. 得到tokenInfo后,我用以下语句,将其加到redis缓存:
JwtUtil.addAccessToken(tenantId, userId, tokenInfo.getToken(), 36000);
3.写的短信登录算是登录成功,但问题来了,我通过以下语句获取当前登录用户信息是,只有account是有值的,其他信息都为空:
BladeUser buInfo = AuthUtil.getUser();
二、你期待的结果是什么?实际看到的又是什么?
期待结果,通过以下语句得到的buInfo是完整的。
BladeUser buInfo = AuthUtil.getUser();
但实际看到的却如图:
三、你正在使用的是什么产品,什么版本?在什么操作系统上?
使用的产品是:BladeX-3.0.1.RELEASE
操作系统是win10
四、请提供详细的错误堆栈信息,这很重要。
五、若有更多详细信息,请在下面提供。
-
TokenInfo tokenInfo = SecureUtil.createJWT(user, "", "", "access_token")这里的user你断点看下是不是传进去就没有值.
讨论(1)
-
问题已解决,分两步:
1、获取token时,传递的用户信息,数据格式为map,其key值必须非驼峰:

2、需要将bladeUser信息保存至HttpServletRequest,此时bladeUser信息字段就是驼峰了:
HttpServletRequest request = WebUtil.getRequest(); // 保存 request.setAttribute("_BLADE_USER_REQUEST_ATTR_", bladeUser);
讨论(0)
- 热议问题
-
无法获取缓存中的iot字典
1
-
bladex 小程序
1
-
avue-data设置大屏渲染前获取token、调用api接口遇到的问题
1
-
物联网平台的blade-emqx数无法发送到自定义的topic上
1
-
计划什么时候发布4.6版本
1
-
前端配置后台地址怎么配置
1
-
在流程配置中的扩展按钮是否可以隐藏,具体需要怎么操作?
1
-
引用水球图echarts时
1
-
springcloud接入seata服务后,报错信息都是try to proceed invocation error开头
1
-
/blade-auth/oauth/token 获取token接口报请求头中未找到 [Authorization] 信息
1
扫一扫访问 Blade技术社区 移动端